Would be great if elm-mdl became the next target for Evan's API video 
series....

Simon

 

On Thursday, 22 December 2016 11:40:56 UTC+1, Simon wrote:
>
> This is a brilliant post!
>
> On Thursday, 22 December 2016 08:07:29 UTC+1, Peter Damoc wrote:
>>
>> 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