ブール値とNil
変数には、ブール値のtrueまたはfalseを割り当てることができます。not、and、およびorを使用してブール値にブール演算を実行できます。
値を割り当てていない変数の値はnilになります。Luaでは、定義も初期化もしていない変数を使用しようとすると、次のようにnil値に関するエラーが報告されることがあります。
bool_variable = true and false or true and not false print(uninitialised_variable == nil) -- prints true, all vars start as nil print(nil == 0 or nil == "") -- prints false, nil is not the same as 0 or an empty string