This should make things easier: https://github.com/eeue56/json-to-elm
Once the AST can be exported and manipulated (a feature that is decently high in priority) then decoders/encoders/generators can be generated automatically. This should happen as soon as elm-format gets AST export https://github.com/avh4/elm-format/issues/236 On Thursday, September 29, 2016 at 9:34:40 AM UTC+10, Kasey Speakman wrote: > > Today I found my team struggling over decoding some fixed-structure JSON. > Search this list for "decode" to see further examples. > > Even though I understand decoders well enough to use them, I still don't > want to use them. For one thing, I don't deal with fuzzy JSON. I have type > aliases that match the JSON structures. Decoder code is entirely redundant > with the information in the type alias. Secondly, writing a decoder is > demonstrably beginner unfriendly. (Read the search results or watch a > beginner struggle with it to see for yourself.) So writing a decoder is > painful both conceptually and because it's redundant work. > > In the shorter term, my prevailing alternative to decoding in 0.17 is just > to use ports to launder the JSON into clean Elm types, since ports are > automatically decoded. But notably Date will not pass through ports. Not a > frequent need for me but if I did need a Date type, another type alias with > date as string or int would be required. Then that would have to be > converted to the real record. It's even more redundant work (albeit > simpler), so I'll avoid if possible. > > In the longer term, the solution that jumps out at me is the compiler > could generate decoders for marked type aliases automatically. (I assume > ports work this way already.) And decoding is still there for fuzzy > scenarios. > > Anyway, I saw in one of the Elm-conf videos Evan say that if I have > issues, I should say something. So there it is. The other main issue we > have looks to get fixed next version (changes to files not being > recompiled). > -- 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.
