Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
ВнизLex and Yacc Найти похожие ветки
← →
Тимохов © (2004-03-24 16:47) [0]Уважаемые, мастера.
Скажите знает ли кто, где можно скачать указанные в subj"e продукты для генерации лексического и синтаксического анализаторов для дельфи?
Скаченный Torbo Pascal Lex and Yacc убили убогостью результирующего кода. Может есть еще что-то?
← →
Defunct © (2004-03-24 16:58) [1]> Скаченный Torbo Pascal Lex and Yacc
Неудивительно, убогость для Torbo Pascal обычное дело ;)
Попробуйте скачать для Turbo Pascal ;)
Дмитрий, простите за невежество, но мне из вашего вопроса непонятно, что значит: "генерация лексического и синтаксического анализаторов для дельфи"
← →
Digitman © (2004-03-24 17:01) [2]я качал и "имел" L&Y for Delphi .. то что нашел, разумеется .. а нашел всего одного разработчика ..
не надейся, что там ты увидишь иное ... обычная адаптация к синтаксису и неким особенностям ОР ..
ручной работы по приведению всей этой бодяги к удобоприемлемому виду и к ООП-концепции - дофига и больше, смею заверить ...
но ... глаза боятся - руки делают .. я сделал ... желаю и тебе чтоб ..
← →
Тимохов © (2004-03-24 17:02) [3]невежество прощаю :)
с процессе компиляции есть много стадий. Две интересующие меня - это лексический анализ и синтаксический анализ. Именно для этого и служат указанные программы - построение по рег. выражениям и по грамматике анализаторов. Их реализаций полно. Пока хорошую не нашел.
← →
Digitman © (2004-03-24 17:05) [4]
> Тимохов © (24.03.04 17:02) [3]
я ж тебе говорю - ручками править придется то, что имеешь для практически любой из известных реализаций ТР L&Y
поверь - нюхал не одну из них ... все - на одно лицо ..
← →
Defunct © (2004-03-24 17:15) [5]Тимохов © (24.03.04 17:02) [3]
но хм.. как оно вяжется со словом "генерация"?
Немного непонятно, это что такие программы, которые позволяют задавать правила языка? Что получется в результате их работы?
Она встраивается в Delphi или вы пишите свой интерпретатор?
Почему спрашиваю, просто сталкивался с разработкой компиляторов, но не использовал чужих компонент, программ, библиотек.
← →
Тимохов © (2004-03-24 17:17) [6]
> Defunct © (24.03.04 17:15) [5]
сам компиляторов не писал, писал интерпретаторы.
в конец задолбался писать токенайзеры, построения деревьев разбора и все такое. вернее писать не сложно, сложно модернизировать.
на это все наука целая есть. вот и решил воспользоваться.
← →
Defunct © (2004-03-24 17:41) [7]эввв, так значит Lex и Yacc генерирует дерево разбора с языка Pascal? или формирует таблицы псевдокода/данных? Ну честно скажу непонятно, как можно взять чужую программу и строить на ней интерпретатор.. Это ж гораздо сложнее разбираться в формате чужой промежуточной программы, чем написать собственный анализатор.
> вернее писать не сложно, сложно модернизировать
Старайтесь писать так, чтобы правила языка можно было задать текстовым файлом.
← →
Тимохов © (2004-03-24 17:49) [8]
> Старайтесь писать так, чтобы правила языка можно было задать
> текстовым файлом.
для того и служат грамматики:)))))))
> эввв, так значит Lex и Yacc генерирует дерево разбора с
> языка Pascal
нет, генерирует на языке паскаль программу, которая строит дерево разбора по любой контекстно-свободной (или не по любой, не помню) грамматике.
если интересно можете посмотреть кс грамматику самого дельфи.
есть в хелпе в разделе object pascal reference.
← →
Игорь Шевченко © (2004-03-24 18:14) [9]Тимохов © (24.03.04 17:49)
А вроде на torry был какой-то софт на эту тему. Я года три назад даже что-то скачивал, и оно было получше, чем Lex и Yacc для turbo pascal.
← →
Тимохов © (2004-03-24 18:16) [10]
> Игорь Шевченко © (24.03.04 18:14) [9]
да вроде облазили его.
с него tply и качали.
пойду еще посмотрю.
но почему-то очень верю Digitman © (24.03.04 17:05) - верю опыту.
← →
Игорь Шевченко © (2004-03-24 18:28) [11]Тимохов © (24.03.04 18:16)
Мне, если честно, всегда сишного бизона хватало. И при серьезной задаче я бы написал бы сишную DLL с разборщиком.
← →
Defunct © (2004-03-24 18:34) [12]нет, генерирует на языке паскаль программу, которая строит дерево разбора по любой контекстно-свободной (или не по любой, не помню) грамматике.
И вы хотите довериться автописателю?..
Чур их, эти все Lex и Yacc ;)
Ни одна программа код лучше вас не напишет.
← →
Тимохов © (2004-03-24 18:37) [13]
> Ни одна программа код лучше вас не напишет.
lex в unix существует немеряно лет.
знаю, что им активно пользуются(лись). И ничего, прокатывает.
Задолбаешься сам по грамматике конечные автоматы строить. Все это очень хорошо поддается автописанию.
Для сей такого до фига.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.05 c