Hacker News new | ask | show | jobs
by darrencauthon 4897 days ago
Example? I don't understand what is meant by this.
3 comments

One of my favorite things about Python 3 is that the grammar actually got smaller: http://docs.python.org/3/reference/grammar.html

It's only three lines, but still.

It seems that Ruby uses GNU Bison:

http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/parse.y?vi...

It is not so clear for documentation purposes, but grammar rules are in between 850-4988 lines.

File/Line size does not tell much about Grammar complexity, but anyway, the whole parse.y file is bigger than cpython/Parser directory. BTW, Ruby's parse.y file is just the input to Bison.

When he says the complex grammar is a barrier to entry for implementation I think he is referring not to the difficulty of writing code in Ruby, but to the difficulty of writing a Ruby interpreter.
What is meant is that Ruby is difficult to parse compared to most languages. By comparison Lisp is easy to parse