MASPEGHI 2015: MechAnisms for SPEcialization, Generalization and inHerItance
algebraic data types, data abstraction, expression problem
The “Expression Problem” was brought to prominence by Wadler in 1998. It is widely regarded as illustrating that the two mainstream approaches to data abstraction — procedural abstraction and type abstraction— are complementary, with the strengths of one being the weaknesses of the other. Despite an extensive literature, the origin of the problem remains ill-understood. I show that the core problem is in fact the use of global constants, and demonstrate that an important aspect of the problem goes away when Java is replaced by a language like Grace, which eliminates them.
Black, Andrew P., "The Expression Problem, Gracefully" (2015). Computer Science Faculty Publications and Presentations. 139.