为什么在 erlang spawn 函数调用中会出现语法错误 - “ syntax error before: ')' ”?

Why is the syntax error coming in erlang spawn function call - " syntax error before: ')' "?

这是我在在线编译器运行中的代码

-module(helloworld). 
-export([start/0, call/2]). 

start() -> 
% error in the below line as  syntax error before: ')'
Pid = spawn(?MODULE, call, ["hello","world"] ),
io:fwrite("~p",[Pid]).


call(Arg1, Arg2) -> 
io:format("~p ~p~n", [Arg1, Arg2]). 

我在 tutorialspoint 在线尝试了 erlang 编译器并且可以重现问题。我猜它在编译器中出现了一些问题,这不是你的错,继续调查 Erlang :)

https://www.tutorialspoint.com/compile_erlang_online.php

可以在线改成这个编译器

https://paiza.io/en/projects/new?language=erlang

//编辑: 问题可能来自 tutorialspoint 的编辑。它使编译器不理解函数 spawn/3,请为 spawn/3 函数添加双引号 '',如下所示,它将编译并 运行:

 Pid = 'spawn'(?MODULE, call, ["hello","world"] ),