多くの「(windows) ユーザー」のように、ソースから何かをコンパイルする方法を学ぶのに時間を費やしたくありません。そのため、Lua は愛好家にとって非常に良い選択のようです。
これが非常に単純な問題である場合は申し訳ありませんが...
Q1. インタプリタの任意のインスタンスで利用可能なモジュールを一覧表示するにはどうすればよいですか?
一部のバイナリ ディストリビューションには、多数のモジュールが DLL としてコンパイルされており、一部はメインの EXE に追加されています。どのモジュールが EXE に組み込まれているかを知り、cpath が他の DLL モジュールを見つけているかどうかを確認するとよいでしょう。
Q2. Lua のコマンドラインでヘルプを表示する方法はありますか?
私は Lua を初めて使用するので、特定の関数のヘルプを簡単に取得できる方法が欲しいです。一部のインタープリター言語には help("fname") 関数があり、Matlab が良い例です。
Q3. GSL-Shell のこの関数をヘルプ システムの基礎として変更できますか? (特定の関数の存在を確認しただけでも役立ちます)
ローカル ffi = 'ffi' が必要
local help_files = {'graphics', 'matrix', 'iter', 'integ', 'ode', 'nlfit', 'vegas', 'rng', 'fft'}
local cdata_table = {'matrix', 'complex matrix', 'complex'}
ローカル関数 help_init( ... )
ローカル REG = debug.getregistry()
REG['GSL.help_hook'] = {}
終わり
ローカル関数 open_module(modname)
local fullname = string.format('help/%s', modname)
ローカル m = 必須 (フルネーム)
mを返す
終わり
ローカル関数 search_help(func)
for k, modname in ipairs(help_files) do
ローカル mt = getmetatable(func)
ローカルモジュール = open_module(modname)
if module[機能] then
local help_text = モジュール[関数]
help_text を返す
終わり
終わり
終わり
help_init()
-- グローバル関数を宣言します
関数ヘルプ(x)
ローカル txt
タイプ(x) == '関数'の場合
txt = search_help(x)
elseif type(x) == 'userdata' の場合
ローカル mt = getmetatable(x)
if mt then txt = search_help(mt) end
elseif type(x) == 'cdata' なら
ローカル cname = gsl_type(x)
if cname then txt = search_help(cname) end
終わり
--- 関数が存在することを確認できますか?
print(txt または "指定された関数のヘルプが見つかりません")
終わり