Since 19jan2003 |
Software+Documentation+Website Release:
3.8
|
Distributed under the terms of the GNU Lesser General Public License. |
Using
![]() CONTENT
PRESS REVIEW![]() ![]() MAIN VERSIONS
|
PresentationCodeWorker is a versatile Open Source (GNU Lesser General Public License) parsing tool and a source code generator devoted to generative programming. Generative programming is a software engineering approach interested in automating the production of reusable, tailor-made, adaptable and reliable IT systems.In layman's terms, CodeWorker lets you generate code by parsing existing languages, or by creating and parsing your own language. Once a language file has been parsed, CodeWorker provides several techniques for generating code. The tool's scripting language drives the parsing and source code generation process. The scripting language syntax is derived from the C family of languages, making it familiar to most programmers. The template syntax is like like JSP, ASP, or Velocity. It has variations for parsing, code generation, or functional programming, giving the developer a number of options for organizing CodeWorker projects. Please do not hesitate to contact us (questions, criticisms, suggestions, ...). ParsingCodeWorker can be trained to parse almost any language and provides two distinct methods for creating parsers:
Source Code GenerationCodeWorker can parse a language and use the resulting parse tree to generate source code via template-based scripts. One example is database DDL (Database Definition Language). CodeWorker has been used to parse DDL and generate large portions of a Java application. CodeWorker's source code generation can occur in three ways: generation, expansion or translation.
Parse-to-Generate: a straightforward processTasks for parsing specifications and generating code are executed in a straightforward process presented in the figure below. Because CodeWorker includes an expressive scripting language, there is no need for a separate "glue language" to join parsing and generation tasks. The figure describes the classical approach used in a leader script interpreted by CodeWorker. It shows the script, which calls first a BNF-parse script, before continuing in sequence and calling a template-based script. There are some other capabilities not noted above, for example CodeWorker can be run as a CGI program.![]() |
CodeWorker is maintained by Cedric Lemaire.
Please send a mail to Submit a bug or feature |