Следующая простая pegjs грамматика работает отлично:Почему pegjs не обрабатывать пробельные правила "«*
start
= sentence
sentence
= word ws sentence
/word
word
= [a-z]*
ws
= " "
Он доступен в http://jsfiddle.net/4V3Zt/. График может быть также вставлен в http://pegjs.majda.cz/online.
Если изменить WS правило, чтобы позволить пробельные произвольным пространства:
ws
= " "* // add an asterisk to allow " ", " ", " ", ...
разбора терпит неудачу с максимальным исключением стеки вызовов брошенным. (Если вы используете jsfiddle, вы видите исключение в инструментах браузера. Исключение возникает и в среде node.js, поэтому оно, безусловно, связано с pegjs).
Что не так с * в этом правиле ws?