Пролог: ошибка синтаксиса DCG - PullRequest
0 голосов
/ 22 ноября 2011

Я пытаюсь проанализировать «вызов функции» для языка, который я создаю, но я получаю:

:30:0 Syntax error: Operator expected

Первая строка ниже, где я получаю свою ошибку:

Fun(FXs) -->   name(F),
                ws,
                [0'(],
                ws,
                args(Xs),
                ws,
                [0')],
                {FXs =.. [F, Xs]}.

 name(N) -->  id(Cs),
             {atom_chars(Cs, N)}.

Я исчерпывающе искал в Google информацию об ошибках в разборе DCG и ничего не нашел. Будет полезно объяснение того, что я делаю неправильно, или любые ресурсы, которые позволили бы мне лучше понять DCG!

1 Ответ

2 голосов
/ 22 ноября 2011

Полагаю, это Весело : вместо этого вы должны написать Весело . SWI-Prolog имеет расширение, разрешающее использование функторов CamelCase, но его необходимо включить.

...