Программы, генерирующие код на других языках

AFLEX, AYACC Исходники Описание Аналогичны LEX и YACC, но генерируют текст на Аде

BISON/EIFFEL Генератор синтаксических анализаторов Bison с возможностью вывода в формате Eiffel.

BYACC/PERL Версия, Berkeley Yacc гернерирующая код на PERL.

COGENCEE Генератор компиляторов для Delphi,разработанный на основе Coco.

Coco/R генерирует анализаторы, работающие по методу рекурсивного спуска и связанные с ними сканеры по атрибутным грамматикам. Судя по адресу кода oberon.ssw.uni-linz.ac.at/pub/Oberon/LinzTools/Coco.Cod рассчитан на Oberon. Coco/R reads an attributed EBNF grammar of a language and translates it into a recursive descent parser and a scanner for that language. Using Coco/R, compilers can be generated that are as efficient as hand-coded and carefully optimized production quality compilers. Almost as important as efficiency is the simplicity and adequacy of the system. Programmers are not willing to use a tool if it does not come in handy to their work, if it uses an arcane notation or a bulk of options and special cases. Coco/R puts simplicity and efficiency over power. Papers , Code , Docs

DEPOT4 Генератор нисходящих распознавателей, поддерживающий описание в стиле схожем с синтаксически управляемой схемой перевода. Язык описания основан на РБНФ. Depot4 предназначен для использования неспециалистами при создании проблемно - ориентированных языков. DEPOT4/Oberon DEPOT4/Java Документация

FLEX/EIFFEL Eiffel версия генератора лексических анализаторов Flex

GOBO EIFFEL LEX & YACC Реализации Lex и Yacc для Eiffel.

GRAY Gray is a parser generator written in Forth. It takes grammars in an extended BNF and produces executable Forth code for recursive descent parsers

HOLUB ПО для книги Аллена Холуба "Compiler Design in C" (LeX, occs, LLama)

Ibpag2 is a parser generator for Icon. It does most of what you would expect. Latest version can handle both SLR(1) and even GLR (Tomita) grammars. I think documentation is included within the source code. Because comp.sources.misc is practically extinct, Ibpag2 is in an old archive, and not very user-friendly to access.

KwParsing is a parser generator for Python. It transforms an abstract specification of a language grammar (for example the CORBA Interface Definition Language) together with "interpretation functions" that define the semantics of the language into a compiler or translator or interpreter. In the case of CORBA IDL a python program using kwParser could generate stubs and support code (in Python or some other language) to talk to a CORBA interface. Documentation included with source code.

Ratatosk started as an exercise to learn to use Gofer, but grew to be a usable system for generating parsers and scanners to use with Gofer programs. The parser generator generates SLR parsers from a context free syntax, and allows semantic "actions" to be used. The generated parsers will backtrack over shift/reduce and reduce/reduce conflicts, so non-SLR languages can be parsed, at the cost of some extra run-time. You will, however, get warnings about any conflicts found while generating a parser.

ML-Lex is a variant of Lex for the ML programming language. ML-Lex has a syntax similar to Lex, and produces an ML program instead of a C program. ML-Lex produces a program that runs very efficiently. Typically the program will be as fast or even faster than a hand-coded lexer implemented in Standard ML.

ML-YACC ML-Yacc is a parser generator for Standard ML modeled after the Yacc parser generator. It generates parsers for LALR languages, like Yacc, and has a similar syntax. The generated parsers use a different algorithm for recovering from syntax errors than parsers generated by Yacc.

tcllex It's a scanner generator, producing an output file in tcl which can be used to scan lexically

T-gen is a general-purpose object-oriented tool for the automatic generation of string-to-object translators. It is written in Smalltalk and lives in the Smalltalk programming environment. T-gen supports the generation of both top-down (LL) and bottom-up (LR) parsers, which will automatically generate derivation trees, abstract syntax trees, or arbitrary Smalltalk objects. The simple specification syntax and graphical user interface are intended to enhance the learning, comprehension, and usefulness of T-gen.

TP LEX AND YACC Генератор лексических и синтаксических анализаторов для Turbo Pascal.

TROOPER Reusable OO Parser for Eiffel Reengineering written entirely in Eiffel TROOPER encapsulates the complexities of lexical analysis and parsing of Eiffel texts utilising an extended parse library which evolved from the ISE EiffelParse library. It provides a complete working parser written entirely in Eiffel. Semantic actions can be added to the parsing constructs to develop different tools such as pretty-printers, compilers, etc.

YOOCC ОО компилятор компиляторов, полностью написанный на Eiffel.

c 1998-2000 SoloTony (Antonio Solo) mailto:solotony@mail.ru