Сумасшедшие ошибки с FsLex и FsYacc
Я пытаюсь скомпилировать этот проект:
Но я получаю кучу бессмысленных ошибок. Они получили текст, с которым я знаком, но в позиции нет ничего подобного (например, неожиданного ')' в пустой строке).
Помоги мне, пожалуйста!
2 ответа
Много мелких ошибок, я совсем не понял, как это работает.
Скобка, найденная Томасом, была одной из ошибок (опечатка), но сама концепция была неверной.
Решено сейчас.
Мне кажется, что сообщение об ошибке (по крайней мере, первое, что я проверил) находится в правильной строке (но неверный столбец в этой строке). Я думаю, что это ограничение дизайна, но я не уверен на 100%.
Во всяком случае, строка 25 файла LispParser.fsy
выглядит подозрительно для меня:
25: ExprList: Expr { List($1, -1, Null) ] }
26: | Expr ExprList { List($1, -1, $2) }
Выражение в фигурных скобках List($1, -1, Null) ]
и есть закрывающая квадратная скобка ]
но не дебют. Итак, я думаю, что скобка, вероятно, не должна быть там. Я не пробовал, но думаю, что оставшиеся ошибки являются лишь следствием этой проблемы.