2 ms·
> My conclusion is that there are major, well-justified reasons for why people strongly dislike functional languages. Personally, I hate type systems. I mean,
by Kamq 4y ago
> My conclusion is that there are major, well-justified reasons for why people strongly dislike functional languages.
Personally, I hate type systems. I mean, I tolerate them, but >90% of the benefit I get is via better auto-complete (an possibly better performance).
Functional languages (that aren't lisp derived*) all seem to love complicated type systems. And in these systems, at some point I experience the same abstraction collapse as I do in a java code-base when I have to sift through 87 layers of interfaces and sub-classes.
I'm also, self-admittedly, a devotee of the New Jersey style of design, and consider usefulness to be much more important than correctness.
*The lisp ones are kinda fun, but I always end up back in dirty-old common lisp where I can do crazy do* shenanigans instead of functional lisp land.
- dermesser 4y agoCorrectness in a program is a bit like Partition-tolerance in distributed systems, isn't it? It's not an option to write (too) incorrect software, even if doing so is a lot faster. At the end of the day, the software needs to do its work.
- Kamq 4y agoSure, but that's an impact in usefulness. I value correctness as far as it makes the program more useful, but relatively simple type systems are more than enough to get there.
- AnimalMuppet 4y agoA program can't be too incorrect (in certain directions) without it affecting usefulness. The type correctness of the language it's written in isn't one of those directions, though.
- voxl 4y agoI mean if you want to vomit up buggy software than not having a type system is a pretty good accelerator for that.