Pek çok "(windows) kullanıcı gibi" Kaynaktan bir şey derlemek için zaman harcamak istemiyorum. Yani Lua bir hobici için çok iyi bir seçim gibi görünüyor. ama ...Modüller nasıl kontrol edilir ve komut satırında kontrol işlevleri var mı?
S1 - Bu çok basit bir sorun ise
üzgünüm. Tercümanın herhangi bir örneği için mevcut modülleri nasıl listeleyebilirim?
Bazı ikili dağıtımlarda DLL olarak derlenmiş bir dizi modül bulunur ve bunların bazıları ana EXE'e eklenir. EXE'lerde hangi modüllerin yerleşik olduğunu bilmek ve cpath'in başka bir DLL modülünü bulup bulmadığını kontrol etmek güzel olurdu.
Q2. Lua'daki komuta hattında yardım almanın bir yolu var mı?
Lua'ya yeni olduğum için, herhangi bir işlev için yardım almanın kolay bir yolunu bulmak istiyorum. Bazı yorumlanmış dillerde bir yardım ("fname") işlevi vardır, Matlab iyi bir örnektir.
Q3. GSL-Shell'den bu işlev, bir yardım sistemi için temel olarak değiştirilebilir mi?
local ffi = require 'ffi' local help_files = {'graphics', 'matrix', 'iter', 'integ', 'ode', 'nlfit', 'vegas', 'rng', 'fft'} local cdata_table = {'matrix', 'complex matrix', 'complex'} local function help_init(...) local REG = debug.getregistry() REG['GSL.help_hook'] = {} end local function open_module(modname) local fullname = string.format('help/%s', modname) local m = require(fullname) return m end local function search_help(func) for k, modname in ipairs(help_files) do local mt = getmetatable(func) local module = open_module(modname) if module[func] then local help_text = module[func] return help_text end end end help_init() -- declare a global function function help(x) local txt if type(x) == 'function' then txt = search_help(x) elseif type(x) == 'userdata' then local mt = getmetatable(x) if mt then txt = search_help(mt) end elseif type(x) == 'cdata' then local cname = gsl_type(x) if cname then txt = search_help(cname) end end --- Could we check that the function exists? print(txt or "No help found for the given function") end
S1: Bunu yapmak için yerleşik veya gerçekten merkezi bir yol yoktur. Benim tavsiyem [LuaDist] (http://luadist.org/) ve [LuaRocks] (http://luarocks.org/) Lua paket yöneticileri ( ) 'a göz atmak olurdu. [LFW] (http://code.google.com/p/luaforwindows/) (Windows için Lua) projesi yararlıdır ... – Kamiccolo