Sorry! Forgot to mention...

The automatic serializer/deserializers in the ports is assuming that the 
main reason behind not serializing ADTs in the first place was this { _0, 
_1... _n } shape.

The "native" object could also swap ctor to type: {type:"TypeValue", value: 
xx} it's a type value, so {type, value} feels more explicit. But that I 
guess is event more sensitive.


On Sunday, January 15, 2017 at 2:59:56 PM UTC+1, Maxime Dantec wrote:
>
> Hi folks,
>
> The last 3 versions of elm were somewhat unusual for a young programing 
> language: features were removed and it has been simplified, to the point 
> that you can't remove anything else. Well, about that.
>
> I believe that the last thing that could be simplified still are ADT. *No 
> type value has more than one value in the core repository*, with the 
> exception of Dict and Color. I have used a few types with more than one 
> value myself, but I hardly see the difference with a type value that has 3 
> values and a type value that has a tuple3 as unique value, if you except 
> the constructor signature. Does yourself make an intensive usage of this 
> feature?
>
> So here is my suggestion: Why not authorize up to one value to type 
> values? If you need to bundle values, you can still use a tuple or a 
> record. The reasoning behind this, is to get rid of the _0, _1, _2 in the 
> "native" part of the type values. we could have {ctor:"Enum"} or 
> {ctor:"TypeValue", 
> value: {...}}, and why not automatic serializer/deserializers in the 
> ports thanks to this too?
>
> Everyone has an opinion, and it's very easy to make a suggestion while not 
> implementing it. I'm not pretending that this is a good idea, I humbly 
> think that it's worth mentioning given that it's in the scope of 
> simplifying the language. Please share you opinion :)
>
> Cheers!
>

-- 
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 elm-discuss+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to