Re: Are there "compiler generators"?

anton@mips.complang.tuwien.ac.at (Anton Ertl)
Sun, 29 May 2022 06:45:21 GMT

          From comp.compilers

Related articles
Are there "compiler generators"? costello@mitre.org (Roger L Costello) (2022-05-28)
Re: Are there "compiler generators"? robin51@dodo.com.au (Robin Vowels) (2022-05-29)
Re: Are there "compiler generators"? 0xe2.0x9a.0x9b@gmail.com (Jan Ziak) (2022-05-28)
Re: Are there "compiler generators"? anton@mips.complang.tuwien.ac.at (2022-05-29)
Re: Are there "compiler generators"? tkoenig@netcologne.de (Thomas Koenig) (2022-05-29)
Re: Are there "compiler generators"? martin@gkc.org.uk (Martin Ward) (2022-05-29)
Re: Are there "compiler generators"? pronesto@gmail.com (Fernando) (2022-05-29)
Re: Are there "compiler generators"? gah4@u.washington.edu (gah4) (2022-05-29)
Re: Are there "compiler generators"? anton@mips.complang.tuwien.ac.at (2022-05-30)
Re: Are there "compiler generators"? DrDiettrich1@netscape.net (Hans-Peter Diettrich) (2022-05-30)
[9 later articles]
| List of all articles for this month |

From: anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.compilers
Date: Sun, 29 May 2022 06:45:21 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
References: 22-05-054
Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="53684"; mail-complaints-to="abuse@iecc.com"
Keywords: tools
Posted-Date: 29 May 2022 18:14:55 EDT

Roger L Costello <costello@mitre.org> writes:
>Are there compiler generators?


Apart from scanner generators and parser generators, there are also:


* generators of attribute grammar evaluators (e.g., Ox). They use an
    attribute grammar as input.


* generators of instruction selectors (e.g., burg and friends). Burg
    uses a tree grammar as input.


* generators of virtual machine interpreters and other code dealing
    with virtual machine instructions (e.g., vmgen). Vmgen uses a
    description of the virtual machine instructions as inputs.


* There is also some work on generating type checkers.


All of these could be classified as non-procedural, although they tend
to include some procedural code.


You need to add substantial amounts of glue code to integrate the
pieces generated by these generators into a compiler, especially for
languages that do not quite fit in the generators' molds. Plus, there
are pieces such as symbol tables and register allocation that are not
covered by these generators.


I have also seen a paper by a French group (don't remember the names)
in the early 1990s where a generator could generate a complete Pascal
compiler from a specification. My impression, however, was that the
generator could only generate compilers for languages that are
relatively close to Pascal, and I saw no good way to make it much more
flexible.


- anton
--
M. Anton Ertl
anton@mips.complang.tuwien.ac.at
http://www.complang.tuwien.ac.at/anton/


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.