Грамматика Ruby
Я ищу грамматику Ruby в форме BNF. Есть ли чиновник версия?
3 ответов
Да, есть одно синтаксис Ruby BNF университетом Буффало.
Edit: я также нашел этот альтернативный синтаксис Ruby BNF.
синтаксис YACC находится в источнике Ruby. Загрузите его и запустите в комплекте utiliy, чтобы получить читаемый синтаксис.
wget ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p195.tar.gz
tar xvzf ruby-2.0.0-p195.tar.gz
cd ruby-2.0.0-p195
ruby sample/exyacc.rb < parse.y
выходной образец (всего 918 строк для v2.0.0-p195)
program : top_compstmt
;
top_compstmt : top_stmts opt_terms
;
top_stmts : none
| top_stmt
| top_stmts terms top_stmt
| error top_stmt
;
top_stmt : stmt
| keyword_BEGIN
'{' top_compstmt '}'
;
bodystmt : compstmt
opt_rescue
opt_else
opt_ensure
;
compstmt : stmts opt_terms
;
также официальная версия: Ruby проект спецификации. вы можете найти грамматику там.
Ruby Спецификация Проекта:http://ruby-std.netlab.jp. сервер не работает, но вы можете скачать его с http://www.ipa.go.jp/osc/english/ruby