Purchase

About Macrocoder

Macrocoder is a tool specifically designed to develop macrocoding languages.
Thanks to Macrocoder, having your "code that writes code" is now easy and immediate.

With Macrocoder you can design your own high-level custom textual and graphical language and, out of it, execute validations, generate documents and code in any other language. Plus, Macrocoder gives you an IDE where you can write using your custom language while being assisted by syntax highligting, "intellisense" and punctual error reporting.

Integrated development environment

A full featured IDE allows the entire development and deployment within the application.

Graphic grammar editor

The graphic grammar editor permits fast and error-free development of input grammars.

At the same time, it provides with an immediate overview of the underlying data structures that will be associated to it.

Macrocoder supports also graphic languages. They have a formal syntax and semantics as text languages do.

Their text parts are parsed by the grammar; the two modes (textual and graphic) can be mixed in the same project.

Mix formal/unformal text

Macrocoder supports mixing formal and unformal text. This feature allows development of markup languages and annotated documents, where annotations are formal.

Phase-centric methodology

The new revolutionary phase-centric programming model implemented in the Macrocoder FCL language makes any complex semantic processing a matter of few lines of code.

Automatic error reporting on user languages

Thanks to the tracking info contained in the processed data, Macrocoder is able to automatically report syntax and semantic errors with their hyperlinked position in the user source file. A simple click on the hyperlink and the error source is evidenced.

Generating/generated code separation

The Macrocoder FCL language, together with the dedicated IDE editor, clearly separates the FCL generating code from the code being generated.

The generated code (yellow) can be nicely indented within generating code, maintaining itself its inner indentations for the cleanest result.

The generated code can be written as-is, without having to bother about escaping special characters, newlines, indenting and so on.