3 ms·
I did not intend to “attack” you and I don’t believe that’s a good-faith characterization of what I wrote. I do attest to this same criticism of Haskell from t
by mlthoughts2018 8y ago
I did not intend to “attack” you and I don’t believe that’s a good-faith characterization of what I wrote.
I do attest to this same criticism of Haskell from time to time because I believe it’s important to refute the very frequent, baseless claims that are often made on Hacker News that claim that functional programming or static typing can make any difference on the reliability or rate of defects in software: they cannot and do not.
I’m not at all trying to dissuade anyone else from using Haskell if they want to use it, and in fact I’d even go so far as to say Haskell is my favorite programming language.
As long as everyone checks the wild claims at the door, and we all admit that there is no difference in terms of safety, robustness, performance, reliability, readability, etc., between Haskell, Scala, Rust, OCaml, Python, Java, Go, Erlang, C++, C#, F#, C, FORTRAN, etc.
None of them is conceptually superior or dominant across a wide range of use cases. It’s just as easy to get hard-to-fix errors in all those languages, just as easy to categorically prevent other classes of errors, just as easy to design for compositional or extensible interfaces, etc.
As long as everyone is essentially willing to accept a No Free Lunch theorem about programming languages, then I don’t care what language people like to use or happen to prefer for personal reasons. I’m not attacking any such preferences.
But when there are unqualified comments about some paradigm or language (like functional programming, or Rust, or Julia, or Haskell, or static typing) being strictly better than some alternatives (like OOP or Python or C), then it’s worthwhile to counter that claim by pointing out that no, in fact, all those paradigms easily lead to the same problems and in no way offer any type of widely applicable solution to the usual problems of developing software.
- yakshaving_jgt 8y ago> I did not intend to “attack” you and I don’t believe that’s a good-faith characterization of what I wrote. You were recently warned by a moderator to stop making sarcastic and unsubstantive comments[0], so I don't think it's me who has trouble reading your tone. > I believe it’s important to refute the very frequent, baseless claims that are often made on Hacker News that claim that functional programming or static typing can make any difference on the reliability or rate of defects in software: they cannot and do not. Any comments I have made regarding the benefits of FP and static typing are anecdotal, and are therefore not baseless. There's also anecdata like this[1], which further refutes the point you're repeatedly trying to make. > and we all admit that there is no difference in terms of safety, robustness, performance, reliability, readability, etc. That doesn't match my experience. My experience has been that it is cheaper for me to run my businesses on Haskell and Elm, as opposed to Ruby and [plain] JavaScript. I've tried both approaches, and I perceive a difference. > As long as everyone is essentially willing to accept a No Free Lunch theorem about programming languages, then I don’t care what language people like to use or happen to prefer for personal reasons. I'll accept there's no free lunch — my technology choices aren't a panacea. They do make a difference to my business however, and as a business owner I am perfectly within my rights to make that judgement call. > I’m not attacking any such preferences. You certainly seem to be. [0]: https://news.ycombinator.com/item?id=19241069 https://news.ycombinator.com/item?id=19241069 [1]: https://twitter.com/rtfeldman/status/961051166783213570?lang=en https://twitter.com/rtfeldman/status/961051166783213570?lang...
- dang 8y agoI don't see any attacks in what mlthoughts2018 wrote above. It's a strong critique of Haskell, sure, but there's nothing wrong with that, as long as it doesn't go into the programming language flamewar thing (which it didn't).