A complete and realistic implementation of quotations for ML (bibtex)
by Michel Mauny, Daniel de Rauglaudre
Abstract:
Quotations have been introduced in the very first versions of ML in order to represent propositions in the LCF logic under a concrete form. ML was the \em metalanguage of this logic, and the logic was its \em object language. In this paper, we describe a new implementations of quotations in a variant of Caml-Light. We address several important problems, namely the impact of such a mechanism on the design of ML, the problem of separate compilation and the possibility of implementing support for quotations in compilers that do not feature dynamic linking. Our implementation is efficient and complete and it includes arbitrary quotations and antiquotations that are usable as expressions or as patterns. It is compatible with module systems and preserves separate compilation. Furthermore, our language is its own object language, and this allows for manipulating arbitrary ML abstract trees without ever mentioning their data constructurs.
Reference:
M. Mauny, D. d. Rauglaudre, "A complete and realistic implementation of quotations for ML", in Proceedings of the Workshop on ML and its applications, 1994.
Bibtex Entry:
@InProceedings{Mauny-de-Rauglaudre-1994,
        author =        {Michel Mauny and Daniel de Rauglaudre},
        title  =        {A complete and realistic implementation of
                        quotations for {ML}},
        booktitle = 	{Proceedings of the Workshop on ML and its
                        applications},
        url = {http://www.mauny.net/data/papers/mauny-de-rauglaudre-1994.pdf},
        abstract = {Quotations have been introduced in the very first
                  versions of ML in order to represent propositions in
                  the LCF logic under a concrete form. ML was the {\em
                  metalanguage} of this logic, and the logic was its
                  {\em object language}. In this paper, we describe a
                  new implementations of quotations in a variant of
                  Caml-Light. We address several important problems,
                  namely the impact of such a mechanism on the design
                  of ML, the problem of separate compilation and the
                  possibility of implementing support for quotations
                  in compilers that do not feature dynamic linking.
                  Our implementation
                  is efficient and complete and it includes
                  arbitrary quotations  and
                  antiquotations that are usable as expressions or as
                  patterns. It is compatible with module systems and
                  preserves separate compilation. Furthermore, our
                  language is its own object language, and this
                  allows for manipulating arbitrary ML abstract trees
                  without ever mentioning their data constructurs.},
        year   =        1994
}
Powered by bibtexbrowser