Компилятоp (тpанслятоp)
- From
- Boris Rudakov (2:5054/9.4)
- To
- Andrey Belyakov
- Date
- 2000-03-01T11:32:37Z
- Area
- RU.ALGORITHMS
Hello Andrey!
29 Feb 00 14:36, Andrey Belyakov wrote to All:
AB> From: "Andrey Belyakov" <andrejb@care.lv>
AB> Hi, Boris Rudakov !
>> AB> При хорошем сотруктурировании данных это можно сделать
>> AB> путем добавления строки в таблицу данных. По крайней мере
>> AB> у меня была такая разработка. Ну а табличку и генерировать
>> AB> можно...
>> Нет, не согласен. Зачем возиться с табличками (в большинстве
>> случаев - очень сложными табличками), когда есть специальные
>> языки, за такие формализмы отвечающие ? Мне куда проще написать:
>>
>> Loop: LoopFor | LoopWhile;
>> LoopFor: "for" Ident ":=" Expr "to" | "downto" Expr "do"
>> Statement; LoopWhile: "while" Expr "do" Statement; и на этом
>> успокоиться.
AB> Напиши аналогичное для Си-выражений, потом я поищу свою
AB> таблицу и сравним. А так же оценим время добавления одной
AB> операции.
:):)
Это LL1 грамматика записанная на языке LX. Так же и матвыражения, о которых речь шла изначально, были LL1. Если мне будет нужна LR1, я возьму Гнушный Бизон :)
Но писать ручками парсер хоть сколько-то большого языка, де еще если это LR - нафиг надо. Я не мазохист. Пусть таблички строит транслятор трансляторов - у меня есть и более важные дела :)
AB> Андрей.
Борис Рудаков, Зовите меня просто ББР
BBR
--- Be happy: BBR is looking at you !
* Origin: АлкАголь малыми дозами безвреден в любых количествах (2:5054/9.4)