A Modularity Bug in Java 8
This addresses a specific programming issue for Java developers and educators, but is incremental as it focuses on a bug in an existing system.
The authors identified a modularity bug in Java 8's interface system, demonstrated through a textbook vector space design, which causes a compilation error and requires a language extension for resolution.
We demonstrate a modularity bug in the interface system of Java 8 on the practical example of a textbook design of a modular interface for vector spaces. Our example originates in our teaching of modular object-oriented design in Java 8 to undergraduate students, simply following standard programming practices and mathematical definitions. The bug shows up as a compilation error and should be fixed with a language extension due to the importance of best practices (design fidelity).