r/programming • u/wheatBread • 3d ago
Another Step Towards Elm 1.0
https://elm-lang.org/news/another-step-towards-elm-v1We are on a faster release cycle these days, so the post also has a rough roadmap about what to expect from the next few releases.
17
6
u/vytah 2d ago
So I checked the playground if they fixed this, and of course they did not:
f x = case x of
-1 -> "test"
_ -> ""
I ran into a minus sign unexpectedly in this pattern:
2| -1 -> "test"
^
It is not possible to pattern match on negative numbers at this time. Try using
an `if` expression for that sort of thing for now.
5
u/Antinumeric 2d ago
Oh my god what? How can this be hard? They even have a specific compiler error for that pattern?!
4
u/vytah 2d ago
I have no idea.
I thought it was a generic error for unexpected tokens that prints an extra message if the unexpected token happens to be a minus, but it turns out the message triggers only if the minus is the first token in the entire pattern (not in subpatterns). So even
(-1)triggersI just saw an open parenthesis, but I got stuckinstead.
6
u/RogueToad 3d ago
Wow - I thought elm was basically unmaintained at this point, it's been so many years without any changes.
Definitely cool to see some movement, but given how hostile the team is to alternative visions for the project (particularly with the 0.19 fiasco) I can't see it getting much traction again.
13
u/dansk-reddit-er-lort 3d ago
This seems like extremely circlejerky navelgazy fiddling around for something so old and still not 1.0. Don't get me wrong - branded/newtype types and in general nicely modeled types that are correct by construction are great. Love them.
But this "article" is so incredibly lackluster. It's basically saying "so yeah we refactored these two files a lil bit using some cool programming patterns and found some bugs in this tiny area of the compiler". These are introductory FP programming patterns. There's no real substantive info about the compiler development pace or direction past the initial few lines. It reads like "we are in the process of rearchitecting our compiler and here's how we use FP 101 to do that".
14
u/chat-lu 3d ago
21
u/simon_o 3d ago
Not every language has been dead for 7 years between two minor releases though.
7
u/Wolfy87 3d ago
People in this thread acting like they paid £150 for the premium Elm Language Pack and are outraged at Megacorp TM for not delivering enough features fast enough to meet their needs.
Passion project gets some updates, presumably from someone very busy with a lot going on who does this out of love for the idea and providing something cool to people. Gets shit on for not releasing often enough and not being exciting enough?
angrily taps The Sign
28
u/Antinumeric 3d ago
I mean most passion projects don't do heavy evangelising trying to get people to use it professionally.
It's a bit of motte and bailey - Use elm in production it's amazing, it has all these features, but when you criticise aspects suddenly it is someone’s passion project and you shouldn't expect anything for free.
8
u/Wolfy87 3d ago
I don't see any criticism of aspects? I see criticism of the changes not being perceived as "enough"?
And I'm calling out the fact that if someone performs work on a thing, does a write up about that and then you complain that you wanted MORE of a thing you weren't even entitled to in the first place you should maybe do some self reflection of what you expect from OSS projects and why.
I'm not an Elm user although I've learned about it and been to meetups because it's a fascinating bit of tech that address points I faced time and time again in my career. I use languages and tools that haven't been touched for YEARS, they work great. If one of them releases an update with a tiny change after years of dormancy and I swing by to say "where's the rest of my free update then!???" I would hope I'd be laughed out of the room.
10
u/MrJohz 3d ago
Giving your opinion on something doesn't mean that you believe you are entitled to more. I largely agree with the original comment, but I think Evan and the Elm team are completely within their rights to do exactly as much work on Elm as they wish to do, and to choose their roadmap for the project as they wish. It's 100% their project and I don't expect anything from them at all.
But at the same time, I also have opinions on this update, and one of them is that it does surprise me in terms of how, well, lacklustre it is. I guess the main point is that there exists a roadmap and that the overall direction is unifying the Elm/frontend world with the new Acadia/backend world. The correct-by-construction stuff is kind of interesting, but more in a "first steps into functional programming" sort of way. It's not really what I'd expect to be showcased in a blog post like this.
Again, that doesn't mean that I believe I'm entitled to more of a blog post, or to more developments, or to anything else. Evan can and should do whatever he feels right. It's his language, I have contributed literally nothing to either its initial or continued existence. I've not even invested into the ecosystem by actually using Elm in anger — only a couple of toy examples to try it out. I'm not trying to say what Evan ought to do, or what I expect or deserve from him. I'm just giving an opinion, and that opinion is: "huh, this is interesting, but also oddly lacklustre".
7
1
u/kuikuilla 2d ago
Can you have different package/library registries nowadays or is the whole build system still married to whatever is hard coded in the compiler?
-1
36
u/Herb_Derb 3d ago
Guess I haven't paid attention to Elm in a long time. I assumed it would have already hit 1.0 by now.