4 ms·
I think it's really hard to properly define "functional programming" concretely, but I'll partially agree. If all a language takes from FP is: - make compositi
by kevinmgranger 5y ago
I think it's really hard to properly define "functional programming" concretely, but I'll partially agree. If all a language takes from FP is:
- make composition ergonomic, idiomatic, and easy (including the usual iterator map/reduce, etc.)
- let the type system protect you (including nullability)
Then you've already got the most important strengths, in my opinion.
- grumpyprole 5y agoFunctional programming is not just programming with closures. It's about "referential transparency". Referential transparency permits higher-level mathematical reasoning, which leads to safer/better program composition, optimisations, caching/reuse and parallelisation/concurrency. If you are willing to concede mutable-state and other uncontrolled effects, there is much to be gained.
- dboreham 5y agoCitation needed. <ducks>
- DeathArrow 5y agoYou might mean "enforced referential transparency" by having immutable variables and no I/O. Otherwise most languages allow you to have pure functions and nothing forces you to mutate state.