Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Elm Is the Best Way for React Developers to Learn Real Functional Programming (cekrem.github.io)
1 point by thunderbong 54 days ago | hide | past | favorite | 5 comments


Elm has always seemed interesting, but the early breaking changes around the 0.19 release seemed to deal a mortal blow to the language.

Looking at the official repos, it looks like much of it hasn't been worked on in years.

What is the status of the project? Is there a fork that has taken over development, or is it a mostly dead curiosity?


The syntax of the language is pretty much what it is for the forseeable future. There's a lot of activity with libraries and such, but not the language itself.

> Is there a fork that has taken over development?

Lamdera is an "un-fork" that is the most interesting. It compiles Elm code into JS 1:1 compatible with the current Elm compiler, and it also allows for compiling full stack Elm including database storage and evergreen migrations [0] which allow you to tell running instances of the app how to upgrade the frontend and backend models, and all the messages in flight. It's honestly pretty incredible. It's kind of hard to explain the mindset shift that entails unless you start writing it.

There's a proper fork (its first commit is the last commit of Elm's public main branch) Gren which does not just target web UIs [1] but also CLIs, servers, what have you.

Lou Reed told Brian Eno that The Velvet Underground only sold 30k copies of _The Velvet Underground and Nico_, but everyone who bought one started a band [2] and that's kind of the case of everyone who wrote an Elm package with more than 10k uses started a language. These include Gleam [3], Roc [4], Derw [5], and Cara [6], the first two of which are making real human beings money writing them.

> Looking at the official repos, it looks like much of it hasn't been worked on in years.

Yeah, Evan entered mahdi/king-under-the-mountain/Lisan al-Gaib mode for a while then emerged with Acadia [7] which has no web presence just some conference talks. Reading the tea leaves, the next step is to stitch together databases and frontends with type safety up and down the stack. This is of course what Lamdera does, and you can ship software in Lamdera today, so I'm interested in what this will end up doing new.

> the early breaking changes around the 0.19 release seemed to deal a mortal blow to the language

I can imagine if you had load-bearing JS FFI via the not-yet-closed loophole for that, it'd be a big annoying deal to do that upgrade. I've only ever written Elm >0.19 and only ever worked places that never used that, so I really can't say how bad that was. Read the same articles everyone else has and that's about it.

[0] https://dashboard.lamdera.app/docs/evergreen

[1] https://gren-lang.org/

[2] https://quoteinvestigator.com/2016/03/01/velvet/#:~:text=Quo...

[3] https://gleam.run/

[4] https://roc-lang.org/

[5] https://docs.derw-lang.com/guides/creating-your-first-projec...

[6] https://cara-lang.com/

[7] https://acadia.engineering/


This is a great write up, I hadn't seen much of the broader community. Thank you!


Thanks! I forgot one more fork: Guida seems to be a fork of Elm with the compiler written in Elm. There are actually a few elm-in-elm efforts out there that are pretty cool, if a little slow, naturally.

https://github.com/guida-lang/compiler

https://discourse.elm-lang.org/t/guida-compiler-was-there-ar...


Forgot about Zokka, a fork that just fixes a couple longstanding compiler bugs and adds the ability to use a private package repo and override package dependencies. Kinda cool.

https://github.com/Zokka-Dev/zokka-compiler/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: