On Wed, Dec 21, 2016 at 8:02 PM, Rex van der Spuy <[email protected]>
wrote:
>
> Can anyone explain what's going on?
>

I haven't been following elm-mdl lately but maybe I can provide some
historical context.

Reuse of UI is a topic that hasn't been solved in Elm.
This is why we don't have any official or recommended complex UI toolkit.

The first real attempt at solving the issue was TEA (The Elm Architecture).
This was a pattern that was distilled by Evan into the
elm-architecture-tutorial.
That tutorial used to show how to define components and how to nest them.

Unfortunately, as soon as people started using the pattern for real work a
lot of discussions started to happen about messages flow (OutMsg) and some
people abused the pattern by splitting the code too much in terms of
components.

Another issue with fancy low level components (many small components that
are unavoidably stateful) is the amount of boilerplate needed and so, Søren
created elm-parts that addressed this and then implemented elm-mdl on top
of that.
Now, Evan moved away from recommending the nesting architecture and advised
against putting functions in Model & Msg. This put the implementation of
elm-mdl at odds with the official recommendation.

Polymer and webcomponents represent the latest attempt at exploring the UI
reuse issue in Elm.
This attempt is in its infancy.
Josh said that he will implement Firestorm using webcomponents and since
that kickstarter got funded we might see a real-world complex use of the
technology.

v1 of the WebComponents standard has been agreed upon by all major vendors
and I'm optimistic about its availability (I believe we'll see it available
next year in the evergreens)
Others don't share my optimism and there is also the issue of mandated IE
support.

I guess we'll see what will happen next year.

In the end, I would like to say that the situation is so foggy that I don't
really have a solid recommendation.
elm-mdl looks like a dead-end while webcomponents is so brand new that we
still haven't figured out how to use it.

The best way forward now might be to use the 0.18 port of elm-mdl with the
flat hierarchy recommendations from the reuse part of the guide. Choose not
to block.
This might allow for an easy refactoring to a better technology.
(webcomponents)







-- 
There is NO FATE, we are the creators.
blog: http://damoc.ro/

-- 
You received this message because you are subscribed to the Google Groups "Elm 
Discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to