■ 組み込み型スクリプト言語lua
ちょっとだけ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