我很少使用 Lua,所以这可能是一个微不足道的问题,但我只是注意到使用 Lua 5.3.2,在交互式 REPL 中我可以编写例如:
> 1 == 2 or error('numbers not equal')
这就是我在 Bash 或 Perl 中执行错误处理的方式(或者当然左边的语句or
在实际代码中会更有用,例如两个变量)。
但是,如果我粘贴1 == 2 or error('numbers not equal')
到某个文件中foo.lua
,然后lua foo.lua
在lua: foo.lua:1: unexpected symbol near '1'
.
我可以接受这是无效的语法,但我觉得很奇怪 REPL 会接受这个语句。有人可以解释这里发生了什么吗?是否有一些关于我在 REPL 中可以做什么而我在脚本中不能做的一般规则?