Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
2 Urix насчет грамматик 02.06.03 23:56
Автор: amirul <Serge> Статус: The Elderman
|
>> arg-declaration-list :
>> argument-declaration
>> arg-declaration-list , argument-declaration
> Во первых, когда описываешь грамматику, не "теряй" символ'. Правильно > фрагмент должен выглядеть так:
>> arg-declaration-list :
>> argument-declaration
>> | arg-declaration-list ',' argument-declaration ;
> или так:
>> <arg-declaration-list> ::=
>> <argument-declaration>
>> | <arg-declaration-list> , <argument-declaration>
Второе, грамматики Ван Вейнгаардена специально появились для описания объектно ориентированных языков (Algol-68,C++ и т.д.). В рамках приведенной тобой LALR(1) грамматики полностью описать синтаксис C++ невозможно.
> Две ошибки у тебя уже найдены
Об этом напиши лично Страуструпу (вернее в коммитет ISO/IEC). Небось даже не читал его "The C++ Programming Language" и в частности Appendix A - "The C++ Grammar"
Части грамматики взяты оттуда (с небольшими поправками на то, что у него был TeX, а у меня всего несколько разрешенных тегов). А туда они попали прямиком из стандарта.
А насчет невозможности. Поищи ка стандарт ISO/IEC 14882 и посмотри в каком виде представлена лексика/грамматика. Если уж очень лень искать стандарт (куда уж вам, вы и без этого сильно умный) можете воспользоваться ссылкой.
ЗЫ: И поищи там ошибки - может внесут поправки в следующую редакцию СТАНДАРТА
ЗЗЫ: К сожалению (из опыта предыдущих бесед), я уверен, если оставить этот топик открытым - будет флейм. А флем тут не нужен. Поэтому при всей некультурности такого подхода, я вынужден закрыть тему сразу после своего поста.
http://www.kuzbass.ru/docs/isocpp/lex.html
|
|
|