为什么两个关键词“then”和“do”都存在?
if x == 1 do
print(x)
end
与
一样可读if x == 1 then
print(x)
end
答案 0 :(得分:5)
作者说“我们明确地设计Lua有一个简单,熟悉的语法”,并且“if-then”组合通常在许多其他常用的编程语言中是众所周知的(考虑到Lua是设计的东西)像20年前一样,想想Basic或Pascal)。
答案 1 :(得分:1)
这看起来是个好主意,但恕我直言,这不是因为其他选择。
我的意思是,这段代码会变成什么样?
if a == 1 then
do_stuff()
else
do_something_else()
end
为了保持连贯,你可能需要这样的东西,我认为这不比现状好:
if a == 1 do
do_stuff()
else do
do_something_else()
end
答案 2 :(得分:0)
从数学的角度来看(因为编程基于数学)"如果"采用形式"如果a为真则b为真,否则c为真"。虽然数学版本不能轻易地移植到编程中,所以它被重新设计以适应环境,因此编程更合适"做"。