i’ve always wanted to get into functional programming, but my uni has been smitten with oop and c++ since like the 90’s or something. i started learning and writing Rust last year, which, i know, is not like an actual functional language, but i found it to be quite different from what i was used to and i want to keep exploring.
i’m a frontend developer by trade, so something like elm not only looks like fun, but also it seems like it could be a great tool for creating stable software. my only hesitancy is that the frontend world moves incredibly fast and the time i spend learning/adopting elm could be spent picking up something shinier and newer that could actually land me a job lol.
another thing i’ve heard is that programming languages like elm can teach you a lot about what it means to write cleaner code, so it’s not like my time would be entirely wasted. what do you guys think?
I think clojure and elixir are far more popular. But if you’re looking to improve your front end skills, I’d just get better with the existing popular ones, like react, vue, svelte, etc.
Allow me to slightly disagree. While you’re right obviously about the popularity aspect from today’s point of view, similar things could have been said about every single mainstream language at some point in the past. Which is to say that if something is niche today, it still may gain traction in the future. Also, one could say “be the change you want to see in the world”. 😉
I’d argue that the fast pace of things changing in the front end world might work to OP’s advantage here, because trying something new is far more common here than implementing business logic in a totally new language.
Despite not having done anything significant in elm, I like it quite a lot (to be fair, the one could be the reason for the other). It is sometimes frowned upon for not being as “feature complete” as Haskell which it somewhat resembles, but I think that’s unfair because it is not a general purpose language but a tool for a very specific use case (building web UIs). Sure, it sacrifices some of the more advanced techniques for a nice beginner experience, but I don’t hear too much complaint about that.
It sure has its own learning curve, but after the first few steps it “clicks” and you may be up to speed faster than you think. So yes, learn elm, it’s time well spent, even if you don’t find a job to use it in. There will always another private pet project you can apply your new shiny things to, even if it is only your private blog for which elm-pages has you covered. ;)