Live data from Hacker News

Functional Programming Is Great. But It Ain’t Magic

moaboelez.medium.com

1–10 of 18 posts

Re: Functional Programming Is Great. But It Ain’t Magic

#3
I'm not a huge fan of this post - I feel like it adds to the confusion where it tries to enlighten.

First, a pedantic point - a proper pure functional language will not have "side effects", it will have "effects" (either through algebraic effects or through monads or something) - nothing "side" about them. Side effects are effects that happen in addition to the main value of doing something (this medicine has side effects). Effects are just things that you want to happen in the world, and many functional languages reason about them as first class objects instead of implicit behaviors. That is, a function has an IO effect or returns a value in the IO monad instead of being a C function that can arbitrarily write to the file system.

Second, the main point of the post seems to be that functional programming will not make concurrency happening outside of the language (say, when talking to databases) safe, but that's a pretty simple point that's not stated as clearly as it could be.

Hopefully I'm not being too harsh - I might have misunderstood something, and the core point that functional programming doesn't magically fix everything is true - but it's that very confusion that I think makes this post unhelpful.

Re: Functional Programming Is Great. But It Ain’t Magic

#4
conflating FP with immutable data structures or with referential transparency and then bashing FP seems pointless.

No one says FP is panacea. Why are you refuting words you put into imaginary novices mouths. Engage with good ideas instead of shooting down bad ideas no one holds.

> what I call FPF ... emanates from people who’ve recently discovered FP ... and have yet to realize that — like all programming innovations since the 1940s — it doesn’t actually solve all the problems for us.

Re: Functional Programming Is Great. But It Ain’t Magic

#8

I'm not a huge fan of this post - I feel like it adds to the confusion where it tries to enlighten. First, a pedantic point - a proper pure functional language will not have "side effects", it will have "effects" (either through algebraic effects or through monads or something) - nothing "side" about them. Side effects are effects that happen in addition to the main value of doing something (this medicine has side ef…

Thank you. I’ve frequently found myself annoyed when people conflate the terms “effects” and “side effects”.
Post reply on HN