|
|
|
|
|
by sridca
4038 days ago
|
|
This has been my experience as well. Learning basic Haskell (from cis194[0]) helped with Elm, however it took a while (about 3 days) before I began being productive at all. Too productive, in fact. Once the basic application is in place, implementing additional features have been laughably easy. For example, implementing the search feature[1][2] took surprisingly little effort. [0]: https://github.com/bitemyapp/learnhaskell#yorgeys-cis194-cou...
[1]: https://github.com/srid/chronicle/commit/4a6c18147bf1596b234...
[2]: https://github.com/srid/chronicle/commit/fb040b9e3268d7d843e... The other benefit is static typing with option types leading to nearly no runtime error! For example, when I did a substantial refactoring[a] of my code, aside from fixing type errors there were no runtimes errors when the new app was run. This is basically unthinkable when writing in plain JavaScript. [a]: https://github.com/srid/chronicle/commit/f81d6d9c04e75fbd9e7... Finally, large Elm programs benefit from componentization[x] of the model and related structures (actions, view, request, run). This is something I plan to blog about later on. [x]: https://github.com/rtfeldman/dreamwriter/issues/39 |
|