Synthesizing Object-Oriented and Functional Design to Promote Re-Use
3 days ago
- #software extensibility
- #programming paradigms
- #design patterns
- The paper discusses the need for a design pattern that combines functional and object-oriented programming to allow for extensibility in both tools and data types without modifying existing code.
- Functional programming supports adding new tools, while object-oriented programming supports extending data types or tools, but not both simultaneously.
- The authors propose a composite design pattern that integrates the strengths of both programming paradigms to resolve the tension between them.
- The paper also suggests new linguistic facilities for languages that support class systems, based on the proposed protocol.