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 pure LALR parsing and general attribute grammars. It is
argued that these methods are too primitive from the practical point
of view: the concepts of the specification language should be on
a higher abstraction level. 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 e.g. a built-in database for storing the descriptors of program
entities and a simple mechanism for semantic error handling. 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.
Users
Please
log in to take part in the discussion (add own reviews or comments).