Я прохожу через упражнение программирования Ch3, создавая Parser Tiger в книге «Современный сборщик компиляторов в ML». Мой файл tiger.grm - here. Ошибка, которую я пытаюсь диагностировать, - это конф
Прежде всего, это домашнее задание. Я должен сделать программу, которая может анализировать язык, описанный здесь: http://www.cs.princeton.edu/courses/archive/spring12/cos320/resources/fun_language_de
Это ошибка: 12 shift/reduce conflicts
error: state 34: shift/reduce conflict (shift OR, reduce by rule 11)
error: state 34: shift/reduce conflict (shift AND, reduce by rule 11)
error: state 34: sh
Я создал компилятор для языка, который имеет следующую грамматику, как определено ML-Yacc (Начиная символ «программа», которая определяется в нижней части): %nonassoc FUN VAR ASSIGN PLUSASSIGN MINUSA