cross-posted from: https://gregtech.eu/post/19047959
Specifically, I’m interested in BEAM, but I’m not sure if I should go for Elixir or Gleam. What seems cool about Gleam is that it has static typing.
I have no experience with functional programming at all btw
Haskell is the GOAT
If it weren’t for the fact it doesn’t have good library support for certain areas, e.g. GUI and graphical apps, I would use it for all my projects instead of C/Rust/Python/etc that I normally use
It’s also good for learning bc it drops you in deep. Everything is a pure function and theory based. You will gain a lot of understanding. I also recommend trying to develop point-free notation in Haskell to further your functional knowledge
EDIT: Also, I would personally recommend against LISP (and its derivatives like Scheme and Closure), not bc they’re bad languages - they’re awesome - but bc they are overly simple in their premise. In LISP, there are basically “things” and “collections of things,” and that’s it. To me, it’s not necessarily even functional, but its own paradigm.
EDIT 2: Also, check out code_report on YouTube. He talks a lot about functional languages (tho he talks even more about array languages lol). Check out the haskell solution on this video
Plenty of objects in Haskell are not pure functions; examples include CAFs and IO actions. Haskell is referentially transparent, not pure. It’s an acceptable language, but the community’s memes are often incorrect or misleading.
There are statically typed Lisps. Even the simplest Lisp has more detail in its type system than you’ve sketched. Also, Lisps don’t have flat set-like collections; they operate on trees. For more detail, refresh your knowledge about the functional paradigm with the corresponding WP or esolangs description.