Related articles |
---|
Translation between high level languages Mikal.Ziane@lip6.fr (Mikal Ziane) (1997-11-29) |
Re: Translation between high level languages hbaker@netcom.com (1997-11-30) |
Re: Translation between high level languages henry@zoo.toronto.edu (Henry Spencer) (1997-11-30) |
Re: Translation between high level languages dweller@universe.digex.net (1997-11-30) |
Re: Translation between high level languages lampe@math.tu-dresden.de (J.Lampe) (1997-12-02) |
Re: Translation between high level languages mslamm@pluto.mscc.huji.ac.il (1997-12-14) |
From: | "J.Lampe" <lampe@math.tu-dresden.de> |
Newsgroups: | comp.compilers |
Date: | 2 Dec 1997 12:06:39 -0500 |
Organization: | Techn. University Dresden |
References: | 97-11-169 |
Keywords: | translator |
Mikal Ziane wrote:
> I am especially interested in as-universal-as-possible approaches
> (not simply from say C to Java or any other particular case). The
> ideal would be attempts to describe the semantics of some class of
> languages and using it to translate between languages of this class.
At least, you need a universal semantics' description. Then, you have
to map your languages onto this description, that's rather similar to
compiler building. In th second step, one has to define mappings back
to high level languages. That's what I think will be even more
complicated.
> [The issues in translating to a high level language aren't all that
> different from translating to assembler, except that people care a
> lot more about the appearance and structure of the output code.
> Before looking for a universal approach, study the sorry history of
> UNCOLs, which tell us that languages that look similar are usually a
> lot farther apart semantically than you would ever have
> believed. -John]
I think, translating between high level languages is likely to be
harder. Assembly languages are much more uniform in respect to
concepts. What makes high level languages' translations hard is
usually the need to identify different concepts that have no distinct
syntactical structures. For example, mapping Pascal's arrays and
pointers onto C counterparts is easy. The opposite direction is more
difficult as in C the concepts of array and pointer cannot be
distinguished that clearly by syntactically means only.
However, see http://www.math.tu-dresden.de/wir/depot4 for a tool for
such translators and some sample applications.
J. Lampe
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.