2004-12-11

組み込み型スクリプト言語lua 組み込み型スクリプト言語lua - Nao_uの日記 を含むブックマーク はてなブックマーク - 組み込み型スクリプト言語lua - Nao_uの日記 組み込み型スクリプト言語lua - Nao_uの日記 のブックマークコメント

ちょっとだけluaを触ってみる。フリーでソースが公開されていて、そこそこ高速で

省メモリ、簡潔な文法ながら多彩な使い方ができるスクリプト言語らしい。

C/C++との連携が容易で、オブジェクト指向っぽい使い方も可能。

[プログラミング言語Luaの紹介]

http://staff.aist.go.jp/yutaka.ueno/lua/docsjp.html

組み込み自体は簡単に終了し、文法も比較的素直なので容易に導入できたが

日本語の情報が少ないため、C言語のvoid*をそのままluaに渡す機能である

ユーザーデータ関連の機能の使い方がわからずハマリ気味。

ユーザーデータにメンバを追加するような使い方はできないのだろうか?

やりたいこととしては、

vec1 = Vector.new(1,2)

vec2 = Vector.new(3,4)

vec1:add(vec2)

print( "vec1 = ", vec1:getX(), vec1:getY() )

のような記述でアクセスできるベクトルクラスをC++側から定義したいだけ

なんだけど・・・。

メタメソッドに関数を入れればいいのかと思ったけど上手くいかず、別にテーブルを

組んでみても思った動作はしてくれない。

時間ができたらもうすこし腰を据えて調べてみよう。

使いこなせばけっこう便利そうなのでもう少し理解できたら、手始めに次回作では

ツールなどに使ってみたい。

[参考]

Luaスクリプトを埋め込んでみよう (2004/1/29)

http://d.hatena.ne.jp/ryoko/197609

Lua in the Gaming Industry

http://www.radiumsoftware.com/0407.html#040708

http://www.radiumsoftware.com/0407.html#040709

Lua for data representation

http://www.radiumsoftware.com/0303.html#030328

http://www.radiumsoftware.com/0303.html#030329