dimensions-functional-programming
Dimensions of functional programming
Work in progress
- expression-oriented
- purity/referential transparency/lack of order effects (free of time)
- value semantics/no object identity (free of place)
- anonymous functions
- closures/capturing local environment
- sum types and pattern matching
- tail recursion
See also Gabriella Gonzalez’s “The End of History For Programming”::
- expressions over statements
- pure functions over side effects
- algebraic datatypes over objects
- recursion over loops
https://www.haskellforall.com/2021/04/the-end-of-history-for-programming.html
Acknowledgements
Thanks to Yawar Amin for pointing out tail
recursion.