ngrease project is a simple metalanguage for defining new concepts easily on any level.
It can define analysis, requirements, design and implementation (in any programming language), and transformations to produce lower level concepts (working software) from higher level concepts.
What's New in This Release:
Removed the old $:child-of that has long ago been replaced by
Changes to existing expressions:
- $ now evaluates its children while evaluating itself to $.
It also handles attributes correctly. Now $:quote and $ have
clearly different semantics that both have their uses.
- $:transform now supports sugar for nested transformations, a chain
of "to" targets.
- $:error now evaluates its message.
Fixed a bug:
- The cli no more enters a busyloop if it is given an unsupported
- generic context-free parser. In theory it works, but
it's still unusably slow.
- ngremental, a DSL for generating an incremental ant script.
This is published as a separate download for easier adoption.
(The language consists of three separate langauges: ant, nxml
- directory->java-source-directory. Not usable until a java parser
- kapsi: some initial sketeches of generating apache configurations
etc for a community.
A new cli option --trace which traces $, parent and constant
expression evaluations and their results.
A new jar, ngrease-testutils that provides a converter from ngrease
exceptions to junit exceptions (actually errors...) to make it
possible to utilize the nice eclipse diff viewer for
Some enhancements to error message (much more work needed here.)
Internal changes to the java framework for expressions that improve
maintainability and performance.