Lua

コルーチンのスレッドはスタックに積まれる

今日はLuaではまってしまいました。各オブジェクトに1つのコルーチンを割り当て、オブジェクトごとにスクリプトを走らせているのですが、オブジェクトの数が一定以上になるとハングアップしてしまうという現象に悩まされました。止まる箇所が不定なので、て…

Luaで変数を定数として利用する際のコスト

Luaで定数を使用したいと考えています。今さら気づいたんですが、Luaには定数ラベルがないんですよね…。 コードの可読性以外にCのプログラムで定数ラベルを利用する際の利点は、 値が書き換えられる危険性がない デバッグ時に数値ではなくラベルで表示される…

CからLua: Luaのコンパイル済みのコードを実行

Lua

CのプログラムからLuaのバイトコードを実行してみます。 組み込みで使用する場合、組み込んだLuaに期待するのは実行環境のみという場合が多いのではないでしょうか。あらかじめコンパイルしたLuaのバイトコードのファイルを作っておき、必要なファイルのみを…

CからLua: Luaのスクリプトファイルを実行

Lua

CのプログラムからLuaのスクリプトファイルを実行してみます。 luaL_loadfile()を使ってLuaのスクリプトファイルを読み込み、lua_pcallで実行します。 // lua_load_script.c // Luaのスクリプトファイルを読み込み、実行する #include <stdio.h> #include "lua.h" #in</stdio.h>…

CからLuaを実行

Lua

CのプログラムでLuaの命令を実行してみます。 ここのサンプルをほんのちょっとだけ変更。 http://lua-users.org/wiki/EasyManualLibraryLoad // lua_test.c #include "lua.h" #include "lauxlib.h" #include "lualib.h" int main(int argc, char* argv[]) { …

Luaのインストール

Lua

Luaを入れてみました。環境はmsysです。 ~/src:$ wget http://www.lua.org/ftp/lua-5.1.3.tar.gz ~/src:$ tar zxvf lua-5.1.3.tar.gz ~/src:$ cd lua-5.1.3 ~/src/lua-5.1.3:$ make mingw ~/src/lua-5.1.3:$ make install ~/src/lua-5.1.3:$ cp src/lua51.dl…