::: <<Prev(003) | List | Next(005)>>

Tips 004
スクリプト言語 Lua

組み込み特化型スクリプト言語「Lua」の紹介


Luaとは

Luaは、いわゆる「スクリプト言語」の一種です。 スクリプト言語といえばperlやruby、Pythonなんていうものが有名ですが、Luaは 「アプリケーションへの組み込みに特化している」という特徴を持ちます。

使用実績

こんなソフトに使用されています。

ゲームばっかりですね。それ以外の例をご存じの方はおしえてください。

特徴(というか利点)

以下に、Lua言語の特徴をいくつか挙げます。伝聞が結構な割合なので、ご容赦ください。

C/C++への組み込みが容易

C言語との親和性に富み、実装がとても簡単です。以前Pythonの組み込み方法を調べてみたことがあったのですが、 サンプルをいくら眺めてもさっぱり解りませんでした。それに比べると確かに簡単です。 Lua環境(ソフト内の仮想Lua実行環境)で使われているデータ型とC/C++でのデータ型のやりとりも たいした手間もかからない、など、導入への敷居は結構低いです。

高速、軽量

使用するためのライブラリのサイズが小さく、組み込みの際にかさばりません。 というのも、プログラミング言語につきものの「関数ライブラリ」(Luaでは「サブライブラリ」という)がとても小さくできているためです。 正規表現なんて高級なものはありません。 その上、入出力や数学関数などのサブライブラリが不要な場合には、 さらにサイズを減らすこともできなくはないです。 また、スクリプトの実行速度もかなり優秀です。 先の使用実績の一覧が、実行速度が重要な位置を占めるゲームソフトばかりな事からも、 Luaの速さが分かるかもしれません(管理人の知識の偏りっぷりも)。

インストールガイド

インストールといってもたいしたものではありません。ガイドといってもたいしたものではありません。 何らかの開発環境がセットアップ済みであることを前提とします。

  1. ダウンロード

    公式ページの「Download」ページを開き、 「The current release is Lua 5.1.2,」のリンクをクリックしてください。 tar.gz形式でダウンロードできます。対応している解凍ソフトを使用して、適当な場所へ展開してください。

  2. コンパイル

    ダウンロードされるのはソースコードのみで、コンパイル済みライブラリは同封されていません。Make等でコンパイルしましょう。

    最近のVisual C++を使用している人なら、Makefileの代わりに付属のバッチファイルを利用できます。 Visual C++環境上のコマンドプロンプト(スタートメニューのプログラム一覧にあるはずです)を起動し、 展開したディレクトリ(README、COPYRIGHT等のファイルがあるところ)へ移動しましょう。 そこで、etc/luavs.batと実行します。コンパイラ等が走り、ソースファイルのディレクトリに lua51.lib等が作成されているはずです。普通のコマンドプロンプトでは、コンパイラ等への パスが通っていない可能性がありますので注意してください。

  3. 配置

    コンパイルされたライブラリと、それを使用するためのヘッダファイルを、使いやすい位置に配置しましょう。 必要なヘッダファイルは、lua.hlualib.hluaconf.hlauxlib.hの4つです。 ライブラリファイルは環境によって変わりますが、Windowsならlua51.liblua51.dllです。 過不足があったらごめんなさいね。

    一番手っ取り早いのは、組み込むソフトのソース一団に混ぜてしまうことです。一番確実な方法ですが、 なんだか負けた気分になってくるのは私だけでしょうかね。

サンプルプログラム

Lua組み込みのサンプルプログラム+αを、こちらに置いておきます。何か参考になれば幸いです。

外部リンク

Luaを取り扱っているサイトを、いくつかここに列挙します。より詳しい情報はこちらへ。

この記事にコメントをする

::: <<Prev(003) | List | Next(005)>>