[[Abstract syntax]] written using prefix constructor terms can become rather unreadable when patterns become large. Therefore it is attractrive to write [[transformation rules]] using the concrete syntax of the object language instead of its abstract syntax. For example, to write PlusZero : |[ e + 0 ]| -> |[ e ]| instead of PlusZero : Plus(e, Int(0)) -> e Starting with StrategoRelease08 concrete syntax is supported by Stratego. For a full account of this new feature and its implementation see the paper [[Meta Programming with Concrete Object Syntax]]. --------- The techniques for handling embedded syntax in a meta-language have now been generalized and are implemented in the =parse-cs= tool in the [[concrete syntax package]] in the StrategoXT distribution. This tool has been used in the embedding of concrete syntax in Prolog implemented in the [[Prolog tools]] package. -- Main.EelcoVisser - 28 Nov 2003 ----- CategoryConcreteObjectSyntax