This paper is a theoretical study of practical problem: the automatic generation of Java Fluent APIs from their specification. We explain why the problem’s core lies with the expressive power of Java generics. Our main result is that automatic generation is possible whenever the specification is an instance of the set of deterministic context-free languages, a set which contains most practical languages. Other contributions include a collection of techniques and idioms o the limited meta-programming possible with Java generics, and an empirical measurement demonstrating that the runtime of the ``javac'' compiler of Java the may be exponential in the program’s length, even for programs composed of a handful of lines and which do not rely on overly complex use of generics.
Wed 20 Jul
|13:45 - 14:10|
|Link to publication DOI Pre-print Media Attached|
|14:10 - 14:35|
|Link to publication DOI|
|14:35 - 15:00|
|Link to publication DOI Media Attached|