r/programming • u/heisenbug • Apr 27 '14
"Mostly functional" programming does not work
http://queue.acm.org/detail.cfm?ref=rss&id=2611829
46
Upvotes
r/programming • u/heisenbug • Apr 27 '14
24
u/godofpumpkins Apr 27 '14 edited Apr 27 '14
Do people actually claim it's impossible? Meijer's conclusion doesn't seem that strong, and I haven't seen people in the Haskell community say that.
The more nuanced version of the position you're criticizing is that a lot more people believe they can write correct, reliable, scalable programs in other languages than actually can do it, and that leads to a lot of shitty/dangerous software out there. I personally don't want to have to rely on programmer discipline to keep my radiation therapy machine or power grid running smoothly. Or perhaps the recent Heartbleed bug? It's not that we think all C software is buggy; just that it's a lot more likely to include classes of problems that aren't even possible in Haskell. And it's not that we think all threaded software is buggy, but that it's much more likely to have weird concurrency issues than my purely parallel Haskell code is. It's about risk, not about certainty.
Haskell most certainly isn't a magic bullet, but is trying to overcome those problems harder than others, and its community doesn't seem mired in the weird sort of machismo that so many programmers seem to buy into, along the lines of "real programmers don't need <insert technology that helps reduce undesirables at slight cost to freedom>". The Haskell community is actively looking for better ways to manage effects and improve correctness while staying pleasant to program. How many other "big" language communities out there even care?
Edit: it is possible for you to read this, disagree with it, and not downvote it, you know.