Related articles |
---|
Elegant compiler generator available lex@natlab.research.philips.com (Augusteijn, dr.ir. A.) (1998-05-15) |
From: | "Augusteijn, dr.ir. A." <lex@natlab.research.philips.com> |
Newsgroups: | comp.compilers,comp.lang.misc,comp.compilers.tools.pccts |
Date: | 15 May 1998 22:36:03 -0400 |
Organization: | Philips Research Laboratories |
Keywords: | tools, available |
The Elegant compiler generator tool sets is now available from
http://www.research.philips.com/generalinfo/special/elegant/elegant.html
It is an industrial compiler generator, used for many years within
Philips. After development of Elegant was stopped, it was decided to
make it available in the public domain under the GNU license. This
includes all sources, so that you will be able to extend the system if
you feel inspired by it.
Elegant is a compiler generator based on attribute grammars with the
following features:
- It accepts both LL(1) and LALR(1) grammars.
- Any non-cyclic attrinute dependency is allowed (!).
- Comes with
- scanner generator
- bnf -> attribute grammar transformer
- postscript syntax diagram generator
- Elegant programing language
- Integrated automatic error recovery
Compilers written in Elegant are very fast (several thousand lines of
source text per second) and the attribute grammars offer a very
expressive formalism on a high level of abstraction, without
sacrificing performance.
The Elegant programming language is smoothlessly integrated with the
attribute grammar specification language (in fact, the latter is a
subset of the former). The language is strongly inspired by functional
programming languages, especially their type systems, yet, it is an
imperative language that does not discourage side-effects. The
language features:
- Strong typing.
- Subtyping (linear inheritance).
- Polymorphic types.
- Polymorphic functions.
- Several different lazy types.
- List comprehensions (but they work for many other types as well,
including your own).
- Overloading.
- Automatic and user definable coercions.
- Pattern matching (= sub-type analysis).
- Function (lambda) expressions.
- Module system.
The whole system offers:
- Lots of compile time and run-type checks.
- Garbage collection.
- Compiles onto ANSI C.
- Interface to C.
- Available on SunOS4/5, HP_UX 10, Linux, IRIX, DOS/Windows.
- Portable to anything with a decent ANSI C compiler.
- Self generating, i.e. written in Elegant (of course!).
All in all a very professional and complete system, free for you to use!
Lex Augusteijn
----
Name: dr.ir. Lex Augusteijn
Address: WL 1.1.13
Philips Research Laboratories
Prof. Holstlaan 4
5656 AA Eindhoven
The Netherlands
Phone: (+31 40 27)43938
Fax: (+31 40 27)44004
E-Mail: lex@natlab.research.philips.com
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.