Announcing TextTransformer 1.0.0 : parser generator / c++ interpreter IDE

Announcing TextTransformer 1.0.0 : parser generator / c++ interpreter IDE

Post by Detlef Mey » Mon, 28 Nov 2005 14:38:16

The TextTransformer is a visual development environment for building,
debugging and executing of parsers and translators. The
TextTransformer is made both for end-users and for developers. The IDE
runs on Windows, the created code can be compiled on any system that
has an ANSI/ISO C++ Compiler.


- The development environment is organized like a database.
- Scripts are syntax highlighted.
- Semantic code can be collapsed or cleared.
- A lot of wizards, a regex test dialog and a character class
calculator are included.
- An extensive context sensitive help exists.


- Recursively descending parsers are generated.
- An arbitrary look-ahead can resolve conflicts, which are detected by
automatic grammar tests.
- Sections of text with unspecified composition can be skipped
- Tokens are defined by regular expressions (extended POSIX style with
Kleene star)
- Productions are defined by the same syntactical elements, like
regular expressions of regular expressions.
- Dynamic placeholder tokens can "learn" additional literal
expressions while parsing the input
- Whole dictionaries with thousands of literal tokens can be assigned
to placeholder tokens.
- Parsers can be fine tuned by global and local options.


- The integrated interpreter with subset of c++ instructions can
execute parsers and translators immediately.
- Parse trees can be created. They can be made by means of wizards for
the whole project.
- By Function tables parse trees can be processed.
- Productions can be called as sub-parser.

DE ***

- Each production can be tested individually and step-by-step.
- Breakpoints can be set, both in the source text and in the grammar
- In a variable-inspector values of variables and whole parse trees
can be represented.


- Productions can be tested automatically


- Individual texts can be transformed inside of the TextTransformer
- Groups of text files can be transformed by means of the integrated
Transformation-Manager or by a command line tool.


- A c++ parser class is produced for a start rule.
- All interpreter code yields compiling c++ code. Additional code,
which is not meant for the interpreter, is taken as a copy from the
productions. By according bracketing it is also possible, to restrict
code parts to the interpreter.
- Multithread save reentrant parsers and translators can be created
- The TextTransformer is bootstrapping itself.

Any feedback is very welcome.


Detlef Meyer-Eltz

1. Announcing Dhaka - A parser generator

2. ANNOUNCE: CL-Yacc, a LALR(1) parser generator for Common Lisp

Dear all,

The recent discussion about LALR(1) parser generators for Common Lisp
prompted me to take the sources I had been using for a private project
of mine, write a summary manual, and put the lot on the web. ~jch/software/cl-yacc/

CL-Yacc is a single file of Lisp code that you are welcome to include
with your application. It is not quite finished yet: there's no
support for either operator priorities or error correction, and it has
undergone very little testing.

CL-Yacc is fully portable Common Lisp code... in theory. In practice,
I've found out that it works under CMUCL, CLISP and Lispworks. It
does not work under GCL or ECL. (I couldn't test under ACL due to the
silly ``no university-sanctioned research'' restriction in the free
edition's licence -- Duane, are you listening?)

Performance is okay, but not outstanding. I've measured it as roughly
2.5 times slower than Zebu under CMUCL.


Juliusz Chroboczek

3. Announcing CookCC lexer/parser generator

4. Delphi parser from TextTransformer grammar

5. LRSTAR 2.0, LALR parser generator for C/C++, released.

6. LR(k) parser generators generating code in C++

7. Announcing C/C++ Cross Platform IDE : Chinook Developer Studio v0.8.8

8. [OT] C++ source as DOM c++ interpreter

9. [ann] Embeddable C/C++ interpreter for Borland C++

10. parser/interpreter

11. override the interpreter's parser?

12. A command line C++ code generator, which makes Unix/Linux C++ development faster.

13. pyPEG parser-interpreter released