Code Worker
Program-Transformation.Org: The Program Transformation Wiki
This tool is a scripting language (distributed under LGPL at
http://www.codeworker.org) dedicated to automate the development process, from requirements specification to IT system development.
The scripting language adapts its syntax to the subject it has to handle:
- an extended-BNF syntax (declarative part of the language) for recognizing the format of the specifications to parse,
- a procedural language for manipulating easily parse trees (the only structured type admitted by CodeWorker), strings, files and directories,
- a template-based syntax (imperative part) like in PHP or JSP, which facilitates the writing of template-based code generation.
Thanks to this syntax adaptation, the scripting language is able to easily:
- acquire any kind of specification of the IT system to produce (people often prefers XML, but it isn't necessary : do easily your own adapted data format),
- generate source code in a classical way (as Rational ROSE), managing preserved areas of text that accept hand-typed code,
- expand a source file like the class-wizard of Visual C++ (generated text is inserted at specified markups in the source code),
- translate from a format to another (LaTeX to HTML, XSL to CodeWorker, ... no limit to source-to-source translation),
- transform a source file (to instrument a source file with profiling features, ... program transformation).
These tasks are executed in a straightforward process, with no binding to an external programming language and with no translation of requirements specification.
--
CedricLemaire - 31 Jul 2003