WG211/M9Carette
From WG 2.11
The structure of typed generic code generators
Jacques Carette
Now that the feasibility of writing complex typed code generators has been established, along with the creation of a toolset for writing typed code generators, we need to understand how to structure and modularize these new programs. Through the investigation of several program families (generally arising from mathematical software), we have built up a methodology for this task. This methodology will be outlined, as well as several of the key ingredients which make this feasible: abstract interpretation, abstract algebra, partial evaluation, and compile-time symbolic computation. One important feature of our approach is that it relies on (carefully) mixing existing techniques rather than on ``new tools.