4
我有一個錯字(哦,Python的例程),但奇怪的是紅寶石沒有抱怨:觸發警告或編譯時錯誤的elif錯字在Ruby中
> if false; put "NO"; elif true; puts "YE"; end
=> nil
> if false; puts "NO"; elsif true; puts "YE"; end #proper way
YE
我不得不思考的半分鐘後,我意識到這是完美的Ruby語法。 Ruby將其解釋爲第一個if
子句的命令的一部分,elif
是一個命令,該命令不存在但在編譯時不知道。即使打開了警告標誌,Ruby也沒有警告。
有沒有辦法警告這些問題?我是否必須爲我輸入這些拼寫錯誤來源?我可以以某種方式強制這是編譯時錯誤?
(我知道,這是一個動態語言,你應該發現這些問題與單元測試,但它仍然是煩人而編寫新的代碼。)
你可以測試你的代碼。只是一個想法;) – d11wtq 2012-04-18 12:11:11
我沒有在這裏看到一個問題。 :) – 2012-04-18 12:13:12
「有沒有辦法警告這些問題」?我可以以某種方式強制這是一個「編譯時」的錯誤? (注:我知道這是一個奇怪的問題,但我不知道任何其他語言允許這樣的錯字) – 2012-04-18 12:18:45