Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

And yet plenty of programmers somehow manage to ship perfectly good solutions to everyday problems without "generic programming" capabilities as you define them. The author of "Elm is Wrong" might have good intentions but the tone of that post is so condescending and inflammatory that all the points being made are lost. The title alone already starts everything on the wrong foot.

Instead of sitting on such a high horse the more constructive approach is to outline the shortcomings, implement the solution, and contribute it upstream. That's not what I see though. Most of these "critical" posts end up just being that. Comparing a language that programmers use every day to ship working solutions to another one that has considerably smaller mindshare and community and then calling the more popular solution a failure because it doesn't have the feature from the more "pure and elegant" language. There is clearly a disconnect in tone and intent across all such posts.

I don't have any horses in these races. Programming languages are just tools and the religious zealotry around them does not appeal to me.



I don't think you get to call people condescending when you just generalised "the academics" to be ignorant of the "real world".

> Instead of sitting on such a high horse the more constructive approach is to outline the shortcomings, implement the solution, and contribute it upstream. That's not what I see though.

That's what the "Elm is wrong" post did though. It outlined the shortcomings and showed how it was impossible to implement the solution because of somewhat arbitrary limitations to the extensible record system. The tone was way off and made it an unpleasant read, but valid points were made.


> I don't think you get to call people condescending when you just generalised "the academics" to be ignorant of the "real world".

Those are your words, not mine. My comparison wasn't about ignorance but of a different value system that is consistently substituted in discussions about programming languages and the substitution is then swept under the rug. The substitution being as I said theoretical concision and expression vs more easily understandable boilerplate and pragmatism.


> And yet plenty of programmers somehow manage to ship perfectly good solutions to everyday problems without "generic programming" capabilities as you define them.

This is definitely true. The firmware on your phone is probably written in assembler.

> Instead of sitting on such a high horse the more constructive approach is to outline the shortcomings, implement the solution, and contribute it upstream.

You complain about sitting on high horses while the author did exactly that and got a high-horse response from Evan.

> Comparing a language that programmers use every day to ship working solutions to another one that has considerably smaller mindshare and community

Are you talking about PureScript? Judging by GitHub popularity I'd say both languages are about equal in that regard, but who knows.


> Are you talking about PureScript? Judging by GitHub popularity I'd say both languages are about equal in that regard, but who knows.

I'm not talking about any language in particular. Just a generic observation about the pattern I've noticed across language communities. I'd much rather see less inflammatory rhetoric and more awesome stuff being made in whatever language people enjoy using so that the rest of us can see the technical design decisions and trade-offs involved. As I said in another comment programming languages are tools, they're not religions, so we should stop treating every little shortcoming as an affront to the one true way to write code and ship software.

Re: doing the right thing. I don't think he did. He didn't even bother looking into why the decision was made to take out a certain feature. He just assumed the decision was wrong because it made a certain design pattern he likes hard to emulate.

As I'm writing this I think I've spent too much time on explaining why the quality and approach of posts like "Elm is Wrong" is not the proper way to approach language design discourse. I'm sure it feels good to a certain segment of the population to point things out this way but to the rest of the community, especially other programmers that just do programming as a job all this drama seems quite childish and I think it again goes back to the point about programming languages being tools. When put in the proper context the drama is amateurish.


I agree the blog post wasn't professional, but there was none of that tone where it mattered, the Github issue.

I can see where his frustration stems from though, getting a response like "I don't want to unless you show me a use case" when clearly presented with a use case after spending weeks trying out someone's language can be infuriating. As I said, not very professional, but understandable imo.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

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

Search: