The Tunes metatranslator subproject


What is a meta-translator ?

  • Languages

    (Computer) concepts are few; (computer) languages are many (not to talk about dialects). Each language stresses particular constructs; people tend to use languages that offer efficient representations for some constructs they often need, when they do not just use the same well-known language as they always do, because it's the only one they (and the person opposite) know. In any case, they often have to cope with the deficiencies of specialized (or just bad) languages that forbid efficient representation of other constructs.

  • Translation

    To translate from one language into another is to understand the explicit (=structural,clear-cut,obvious) and implicit (=background,nuances,ambiguities) meanings of texts written (or spoken) in the first language, and render them back as efficiently as possible in the other one, with as few information creation or loss as possible, and with proper translator's notes when needed.

  • Meta-translation

    This project will try to provide a meta-translator, that is, some piece of software that allows design of translators between languages of the highest level of abstraction. The meta-translator project will also deal with program manipulators, which are a generalization of translators, that go from one language to itself, with irreversible or undeterministic changes in the context or meta-context.

  • What to translate ?

    The meta-translator will be used to compile the HLL into the LLL, to translate any language (particularly widely used languages like C or LISP) into our HLL, and perhaps even to translate subsets of human "natural" languages into computer languages or other human languages.



    Examples

    see the Sieve of Erathostene for examples. .....


    To Do on this page

  • Expand on meta-translation.
  • Give a pointer to the proper entries in the Review Subproject
  • give examples of automatic translation of programs.
  • in particular, show well-known isomorphisms between programming paradigms, such as

  • Back to the Tunes HLL subproject.
  • Down into the C translator subproject.


    Subproject maintainer:
    Faré -- rideau@clipper.ens.fr