B. Fischer and E. Visser. Adding concrete syntax to a Prolog-based program synthesis system (extended abstract). In M. Bruynooghe, editor, Preliminary proceedings of the International Symposium on Logic-based Program Synthesis and Transformation (LOPSTR'03), Uppsala, Sweden, August 2003. (pdf)

This paper is subsumed by the paper 'Retrofitting the AutoBayes program synthesis system with concrete syntax'


Program generation and transformation systems manipulate large, parameterized object language fragments. Support for user-definable concrete syntax makes this easier but is typically restricted to certain object and meta languages. We show how Prolog can be retrofitted with concrete syntax and describe how a seamless interaction of concrete syntax fragments with an existing ``legacy'' meta-programming system based on abstract syntax is achieved. We apply the approach to gradually migrate the schemas of the AutoBayes program synthesis system to concrete syntax. First experiences show that this can result in a considerable reduction of the code size and an improved readability of the code. In particular, abstracting out fresh-variable generation and second-order term construction allows the formulation of larger continuous fragments and improves the ``locality'' in the schemas.