(Язык программирования) Как судить, является ли эта грамматика неоднозначной - PullRequest
0 голосов
/ 27 апреля 2018

S -> () | (S), | SS

Эта грамматика неоднозначна? и как я могу судить, является ли эта грамматика неоднозначной? Я научился рисовать дерево разбора. Но я не знаю, как это нарисовать.

1 Ответ

0 голосов
/ 01 мая 2018

Вы можете сделать следующее: написать грамматику в формате для yacc (или любого другого знакомого вам генератора синтаксических анализаторов). Вот так

%%
s: '(' ')' | '(' s ')' | s s;

Запустите это через yacc и найдите ошибки смещения / уменьшения или уменьшения / уменьшения.

...