Category:Compiler Generators

From eplmediawiki
Revision as of 01:23, 5 January 2013 by Admin (Talk | contribs)

Jump to: navigation, search

A Compiler Generator (CG) is a program that takes, as input, a Language Specification (a Regular Expression (ER), a Grammar (G), etc.) and produces, as output, another program that is a Processor (a Compiler, an Interpreter, or whatever) for the language specified.

Notice that the correct name for this special program should be Language-Processor Generator. However the actual name is indeed Compiler Generator; alternatively, it is also known as Compilers Compiler.

The usefulness of such a program is unquestionable. From a short and concise formal specification of a language, a complex and efficient program is quickly generated with the guarantee that the generated program will recognize all the valid sentences that belong to that language and will transform/translate them in a systematic way.

From a large list of well known Compiler Generators---Yacc, Btyacc, Mlyacc, Happy, Coco/R, CTB, Tools, JavaCC, CUP, SGen, LRC, LISA, Eli, PCCTS, AnTLR, Silver, Sable, ASF+SDF---we chose a subset of them to install and test.

To enable the comparasion of each tool usage, all of the CG chosen were experimented with the same language, Lavanda, that is a didatic Domain Specific Language used for teaching purposes. Lavanda is specified by the following grammar: LavandaGrammar.

A small set of input texts, to test the compiler generated by each tool, is available here.

An article comparing three compiler generators (Lex/Yacc, LISA and ANTLR-3) ca be found here.

_________________________________________________________

Click here to download this selection of articles as a PDF book.

_________________________________________________________

Pages in category "Compiler Generators"

The following 9 pages are in this category, out of 9 total.

Personal tools
Namespaces

Variants
Actions
Navigation
extras
Toolbox