我正在尝试为我正在创建的语言解析“函数调用”,但我得到了:
: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的资源!
答案 0 :(得分:2)
我想这是有趣:你应该写有趣。 SWI-Prolog有一个扩展允许CamelCase仿函数,但必须启用。