Abstract
There is a trend in the software industry to sell "mostly functional" programming as the silver bullet for solving problems developers face with concurrency, parallelism (manycore), and, of course, Big Data. Contemporary imperative languages could continue the ongoing trend, embrace closures, and try to limit mutation and other side effects. Unfortunately, just as "mostly secure" does not work, "mostly functional" does not work either. Instead, developers should seriously consider a completely fundamentalist option as well: embrace pure lazy functional programming with all effects explicitly surfaced in the type system using monads.
- Hughes, J. 1989. Why functional programming matters. Computer Journal 32(2): 98-107. 10.1093/comjnl/32.2.98 Google ScholarDigital Library
- Filinski, A. 1994. Representing monads. In Proceedings of the 21st Annual ACM Symposium on Principles of Programming Languages (POPL). ACM Press: 446-457. Google ScholarDigital Library
- Landin, P. J. 1966. The next 700 programming languages. Communications of the ACM 9(3): 157-166. 10.1145/365230.365257 Google ScholarDigital Library
- Lillibridge, M. 1999. Unchecked exceptions can be strictly more powerful than call/cc. Higher-Order and Symbolic Computation 12(1): 75-104. 10.1023/A:1010020917337 Google ScholarDigital Library
- O'Hearn, P. W. 2012. A primer on separation logic (and automatic program verification and analysis). Software Safety and Security; Tools for Analysis and Verification. NATO Science for Peace and Security Series 33: 286-318.Google Scholar
- Oram, A., Wilson, G. 2007. Beautiful Code: Leading Programmers Explain How They Think. O'Reilly Media. Google ScholarDigital Library
Index Terms
- The Curse of the Excluded Middle: Mostly functional programming does not work.
Recommendations
Class imbalance and the curse of minority hubs
Most machine learning tasks involve learning from high-dimensional data, which is often quite difficult to handle. Hubness is an aspect of the curse of dimensionality that was shown to be highly detrimental to k-nearest neighbor methods in high-...
The rise of middle and upper middle class in emerging markets: product and service opportunities
OZCHI '08: Proceedings of the 20th Australasian Conference on Computer-Human Interaction: Designing for Habitus and HabitatThe middle and upper middle class population in the often termed emerging markets is typically a less investigated target as most consumer research and development efforts for such markets are primarily focused on rural communities as well as the lower ...
Middle Management and Information Systems Strategy: The Role of Awareness and Involvement
HICSS '14: Proceedings of the 2014 47th Hawaii International Conference on System SciencesTop management involvement is important to the success of IS strategy. However, it is not typically within top management's role to implement strategy, rather, strategy implementation falls under the purview of middle management. This study investigates ...
Comments