OS/2 FAQ


OS/2 Programming FAQ - пpогpаммиpование. Статья 011

Q Порекомендуйте генеpатоp паpсеpов и лексических анализатоpов
A
(DZ FAQ) Sergey Shikov, 2:5020/157.108

Кто еще не видел Visual Parse++, рекомендую! Это нечто вроде LEX & YACC, генератор лексического и синтаксического анализа языка в одном флаконе, но гораздо удобнее. Имеется диалоговый отладчик грамматик. Поддерживает языки C, C++, REXX! (можно написать вполне рабочий интерпретатор целиком на REXX). То что я нашел на /204 - это демо версия, умеет грамматики до 32 продукций. Компилятор с Паскаля на этом не напишешь, но на арифметические выражения хватает с запасом.

Главное в том, что его результаты гораздо удобоваримее монолитной C-программы после YACC.

(Dmitry Kohmanyuk, 2:463/32)
PCCTS - Purdue Compiler Construction Tool Set. Я его использовал под Unix-ом, но точно знаю, что есть OS/2 port.
URL: ftp://marvin.ecn.purdue.edu/pub/pccts/
(там должны быть и сорсы, и собранная двоичка для DOS и OS/2)

достоинства:

  • в отличие от YACC, это LR(k), а не LALR(1). То есть можно делать грамматики невообразимой глубины ;-) - парсер сам будет просматривать на столько вперед, насколько нужно.

  • можно задавать семантические предикаты - то бишь правила _внутри_ грамматики (типа assertions: definition = type-name { is_typename($1) } var-name* ;, синтаксис условный) }

  • B комплекте идет и генератор парсеров, и генератор лексеров. лексеры делает очень правильные (в смысле быстрые).

  • mailing list: pccts@ecn.purdue.edu

К предыдущей статье | К оглавлению раздела | К следующей статье

Вернуться к списку разделов FAQ.

Если у вас есть вопросы или пожелания, пишите, мы будем рады.

Данный FAQ cоставили Ivan Borovicov и Viatcheslav Odintsov (2:5020/181) на основе OS/2 FAQ Дмитрия Завалишина (dz) и материалов переписки в группе эхоконференций su.os2.*. Оформление статей: Николай Королев. Программирование JSP для RU/2: Евгений Кулешов. Благодарности: Дмитрию Максимовичу (MaximDim) за громадную помощь на первых этапах и Дмитрию Бану (banshee) за его помощь при проверке текста.



Интересные ссылки:
Комментариев к странице: 0 | Добавить комментарий
Домой | Проект ядро Core/2 | Проект OS/4 Download | Новости | Гостевая книга | Подробно обо всем | Нужные программы | Проекты | OS/2 FAQ | Всячина | За и Против | Металлолом | #OS2Russian | RDM/2 | Весёлые картинки | Наша галерея | Доска объявлений | Карта сайта | ПОИСК | ФОРУМ