Live data from Hacker News

Road to Elm 1.0

elm-lang.org

51–60 of 192 posts

Re: Road to Elm 1.0

#51
We had some big Elm proponents who were trying hard to convince the company to use Elm, including doing proof of concept buildouts in Elm.

Then the 0.18 to 0.19 Elm drama happened: The core team restricted the ability for users to do any native JavaScript interop, which broke every Elm app that needed any functionality that wasn’t in the core library.

It split the Elm fans into two groups: Those who were upset that they had invested in a language that now pulled the rug out from under them, and those who were true believers who told us that they trusted the Elm team’s decisions and we all needed to chill out and wait for them to address our needs, which they thought would happen soon. That was 7 years ago. There were some attempts to spin the lack of updates as “Look how mature and stable it is!” but you don’t have to look very deep to see that they just stopped working on it.

Last time I went back to look at it there were several Elm forks, some maintained by former members of the Elm core team that were more active but never caught on. With the way the core team broke important functionality, ignored the user base, and then abandoned the project for years there is no way I would ever allow this near a production website. I know that will earn me some downvotes from the die-hard Elm fans, but I think it’s important context for anyone who finds themself in a situation where Elm is being proposed for an internal project. It was always interesting as an experimental niche framework, but not as something I’d ever want near a product that I had to maintain. Especially not something that had to survive across developer turnover when your company’s main Elm proponent left and the language was abandoned for years.

Re: Road to Elm 1.0

#52
post #23
post #17

Earlier quoted context omitted.

The project was dead. The previous release was 7 years ago, where it stopped because the creator (same as author of this announcement) stopped maintaining it and since the community hasn't progress beyond a BDFL-model that's where it died. So it was dead, it just now has been resurrected (and AFAIK with a whithered community in the meantime).

your definition of dead is elms definition of stability, I think :D haha javascriptland really warps peoples minds on stability and project-liveness

> your definition of dead is elms definition of stability, I think :D haha

The Elm community (or those who remained anyway) has a very cult-like way of spinning the current status quo as being good for you, even if it’s not.

Removing native JavaScript interop in 0.19? They’re just making it more pure! Sorry your project had to become impossible to continue on Elm, but this is the price we pay for a leader with vision.

No appreciable updates or bug fixes for 7 years? That’s just stability! Look how stable and mature it is that it can go 7 years without a release!

Re: Road to Elm 1.0

#54
I think of Elm more as an incredibly influential research language these days.

It's very focused, there's no public roadmap or official support and the leadership (which is far as I can tell is just Evan) is uninterested in most (any?) community building or core team building.

But MAN is it nice to work in. This has resulted in several forks/spin-offs. At the recent Gleam conference, Louis Pilfold joked that every Elm user maintains their own compiler :). There are at least 6 of them (two more got announced in the last month, even as the community keeps shrinking).

So I'm glad Evan is now working towards 1.0. Maybe folks can call Elm "finished" and one of the successors can do the hard work of unifying some of the forks and growing the community.

Personally, the next time I'm looking for an Elm-like thing, I'm going to check out Gleam + Lustre. Seems to have a nice mix of maintainers that care about community and design. And it works on frontend + backend!

Re: Road to Elm 1.0

#55
post #26

Did the restrictions on JavaScript get resolved? IIRC, they made it so you had to use their “Ports” mechanism to interface with JavaScript, and you couldn’t write your own wrappers. There was some drama when someone forked it so you could write your own JavaScript wrappers/FFI too?

FFI is still mostly done through ports (or web components, for the view part). This is an intentional choice and likely to stay until 1.0 and beyond

Re: Road to Elm 1.0

#56
We're now migrating to React, but have some very large Elm projects still in prod.

The biggest thing for me from practical perspective was to "freeze" some pieces of DOM to be guaranteed to not change/re-created, so that it plays well with some external JS libraries expecting some nodes to not change and stay vanilla.

Another is ability to extend Elm's debugger to filter out big noisy data to keep it usable for our project.

Third is when your data is too big -- it just sometimes fails with "recursion limit" that's hard to debug due to the nature of the langauge.

Otherwise – it's a very beautiful little language that still feels quite modern and easy to work with IMO.

Re: Road to Elm 1.0

#57

About two years ago I was experimenting with ChatGPT vibecoding a snake game in the browser in elm, because elm is my favorite language. It was rough going and I concluded at the time that LLM‘s might kill elm. Today I use elm in production and LLMs are vastly better at it, and if anything I think LLM‘s might increase elm adoption because it is the ideal language for an LLM right now. It’s a simpler language than mos…

[deleted]

Re: Road to Elm 1.0

#58
post #48

About two years ago I was experimenting with ChatGPT vibecoding a snake game in the browser in elm, because elm is my favorite language. It was rough going and I concluded at the time that LLM‘s might kill elm. Today I use elm in production and LLMs are vastly better at it, and if anything I think LLM‘s might increase elm adoption because it is the ideal language for an LLM right now. It’s a simpler language than mos…

Maybe it's improved, but I was very disappointed to find agents constantly tripping over significant white space with Elm (Claude Code). Always struck me as strange since they are very proficient with python... and Elm has been one of the most stable modern languages (so stable that people complain about it never changing!). I think the last time I tried was a year ago though, so I assume it has improved.

I started working with Elm in production again about a year ago and have bounced back and forth between codex and Claude code and haven’t noticed whitespace problems, so I would conclude it’s better but of course your mileage may vary

Re: Road to Elm 1.0

#59

Oh my God, I had no idea this project was still alive. I don't mean to throw any shade but I had assumed that the lid was on this turkey.

I’ve been using Elm professionally at a very profitable, lean company the last two years. (Didn’t know it coming in, but had enough React, Redux, and other experience to learn quickly.) The Elm community would call this a feature. How much React code you wrote 6-8 years ago will work perfectly and identically with today’s React toolchain? It’s a whole different set of values. Good React code in 2026 looks like any co…

> How much React code you wrote 6-8 years ago will work perfectly and identically with today’s React toolchain?

Today's Elm toolchain is the Elm toolchain of 6 years ago!

Re: Road to Elm 1.0

#60

Earlier quoted context omitted.

Stability. It works. Frequent breaking changes to core functionality of your tech stack is not a feature, it’s a bug.

Weird not to mention Elm's massive breaking change that killed the project?

How does that bear on my comment?
Post reply on HN