home *** CD-ROM | disk | FTP | other *** search
- From: ericv@phoibos.cs.kun.nl (Eric Vos)
- Newsgroups: alt.sources
- Subject: GLAMMAR: text to text translator generator
- Message-ID: <2556@wn1.sci.kun.nl>
- Date: 14 Dec 90 15:05:50 GMT
-
-
- Archive site: phoibos.cs.kun.nl (131.174.81.1)
- Archive directory: pub/GLASS/glammar.tar.Z
-
- (Call for beta test sites)
-
- GLAMMAR ---- text to text translator generator.
-
- Now available for anonymous ftp on "phoibos.cs.kun.nl",
- at the University of Nijmegen (Netherlands).
- Glammar is a powerful and efficient text to text translator generator
- for unix based systems.
- Glammar descriptions are translated to C.
- Applications range from front ends for compilers
- to the description of natural languages.
- Here is the introduction from the manual (+- 100 pages) of the
- distribution (included in "dvi" format).
-
-
- ++++++++++++++++++
- 1.Glammar: Front end compiler compiler
-
- A number of tools have been developed specifically to help construct transla-
- tors. These tools range from scanner and parser generators to complex systems ,
- variously called compiler-generators, translator-writing systems or compiler
- compilers. They all require a specification of the source language and target
- machine to produce a compiler for the source language that produces code for
- the target machine. In Glammar, the description of both, the source language and
- the associated target machine code, are specified in one same descriptive
- language. The primary advantage of glammar as a compiler compiler is its struct-
- ural simplicity. There is no need for the user to make double, losely connected,
- specifications, nor the need to program in the traditional imperative style.
- Glammar is perhaps better being defined as syntax-directed text to text \
- translation tool or as a pattern transformation language. Usage is not limited
- to the development of (front ends for) compilers.
-
-
- 2.EAG, a language description language
-
- EAG is an acronym of Extended Affix Grammars. These grammars are an
- extension of context free grammars. We assume the reader has at least some
- basic knowledge of context-free grammars. The extensions are:
-
- (1)Affix expressions labeling nonterminals. This allows nonterminals to yield
- results. The results are composed of results of the members of a nontermi-
- nal together with constants and metanonterminals. Second affixes can be
- used for affix directed parsing which make it possible to describe context
- sensitive languages.
- (2)A metalevel. The metalevel acts as an abstraction mechanism and
- concerning the Glammar lattice feature it can be used as a very efficient
- unification mechanism.
-
-
- 3. Should you use Glammar
-
- Glammar is most generally defined as a pattern transformation language.
- Patterns and their transformations are specified together in one uniform
- descriptive language. A grammar defining a pattern need not to be regular, LL
- or LR. It may even be ambiguous. For simple grammars a parser created by
- glammar is about as efficient as a YACC generated parser. More complex ones
- usually have more C code in their YACC implementation and therefore gain some
- speed in comparison with Glammar .
- The best comparison is to PROLOG's Definite Claus Grammars. Some differ-
- ences are that Glammar
-
- - uses flow symbols
- - has an automatic memorizing option (absolute necessary for linguistic
- grammars)
- - offers finite lattices as a metagrammar (with some well defined operators)
- for very fast unification and finally
- - treats backtracking quite different.
- - directly translates to C.
-
- Glammar is used extensively by people designing and testing grammars for
- English, American and Spanish. Glammar is also used in several Esprit projects
- at the KU Nijmegen. It is used to implement a parser for Comma (COMputable
- MAthematics) and has been used to implement Glass (General LAnguage for System
- Semantics).
-
- ++++++++++++++++++
-
- Problems, bugs or comments can be reported to ericv@cs.kun.nl
-
- Enjoy,
- Eric Voss.
-