私はプログラミング言語としてLualocal
が大好きですが、すべてのローカル変数に対して常に「」と入力しなければならないのは信じられないほどバグです。
それは私のコードをより雑然と見せてくれるだけです。
ですから、Luaの上にドメイン固有言語(DSL)を作成して、次の変数の命名規則を使用することはできますか?
- 変数名がすべて大文字の場合、それはグローバル変数です
- それ以外の場合、変数は
local
変数です
質問:これは機能しますか?はいまたはいいえ?
言い換えると:
-- In Lua 5.2
isGlobalinLua = "is global in default Lua"
GLOBALVAR = "is global var in default Lua"
local localvar = "is local var in default Lua"
-- In my DSL Lua language
isLocalinDSLLua = "is local in DSL Lua" -- translates to: local isLocalinDSLLua = ...
GLOBALVAR = "is global DSL Lua"
localvar = "is local var in DSL Lua" -- translates to: local localvar = ...
だから今、デフォルトのLuaの次のコード:
myglobal = 10
local a = 1
if a > 1 then
local b = 2
print b
else
local c = 3
print c + myglobal
end
私のDSLLuaで:
MYGLOBAL = 10
a = 1
if a > 1 then
b = 2
print b
else
c = 3
print c + MYGLOBAL
end
更新:
ローカル関数はどうですか?
次のコードはどのように機能しますか?
myfunc = function (...) -- local myfunc = function (...)
すべてのグローバル関数をすべて大文字で作成したいのかどうかはわかりません。
たぶん私は関数を無視し、' local
'識別子...思考を必要としますか?