z-logo
Premium
The design of a language processor generator
Author(s) -
Koskimies Kai,
Nurmi Otto,
Paakki Jukka,
Sippu Seppo
Publication year - 1988
Publication title -
software: practice and experience
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.437
H-Index - 70
eISSN - 1097-024X
pISSN - 0038-0644
DOI - 10.1002/spe.4380180202
Subject(s) - computer science , compiler , programming language , parsing , generator (circuit theory) , rule based machine translation , symbol (formal) , semantics (computer science) , compiler construction , information processor , class (philosophy) , automation , artificial intelligence , information processing , mechanical engineering , power (physics) , physics , quantum mechanics , engineering , neuroscience , biology
Abstract Language processor generators are systems that produce various language processors (including compilers) on the basis of a high‐level specification. The design of language processor generators is discussed on the basis of experiments with a traditional compiler writing system (HLP78) employing pore LALR parsing and general attribute grammars. It is argued that these methods are too primitive from the practical point of view. The design of a new language processor generator, HLP84, is based on this view. This system is an attempt to provide high‐level tools for a restricted class of applications (one‐pass analysis). The syntactic facilities include regular expressions on the right‐hand sides of productions, a disambiguating mechanism that is integrated with regular expressions, and a mechanism for using semantic information to aid parsing. The semantic facilities include automatic support for semantic error handling and for symbol tables. Early experiences with the new system show that in spite of the general overhead caused by the higher automation level, the system allows the generation of reasonably efficient processors.

This content is not available in your region!

Continue researching here.

Having issues? You can contact us here