最近、基礎文法最速マスターというプログラミング言語の解説が流行ってるようなので、便乗してみた。個人的にはC++やPythonの方が慣れ親しんでいるのだが、自分でも勉強できるように普段使っていない言語を書いてみることにした。以前にここのブログで言及した言語、Processing、Erlang、Lua、PowerShellなどの中でもErlangとLuaに興味があったので、比較的書きやすいLuaを選んでみた。 何故Luaなのか? Wikipedia によると、Luaはブラジル・リオデジャネイロのカトリカ大学で生まれた手続き型言語だ。高速な動作、高い移植性、組み込みの容易さが特徴だ。また、ホストプログラムへの組み込みが容易であることもあって、 コンピュータゲームなどで利用 されている。有名どころでは、 PlayStation Home や World of Warcraft などがある。また、小飼弾氏も なんてめんこい言語 と述べているように評価が高い。 さて、早速Lua基礎文法最速マスターを書いてみる。上述のように自分にとっては勉強を兼ねて書いているので、間違いや記述漏れなどがあるかもしれない。コメントなどで指摘していただけるとありがたい。また、C言語の連携など、足りない部分については随時追加していく予定だ。 追記(2010/2/9): 「C言語とLuaの連携」を追加した。 1. 基礎 対話環境 Luaは対話環境として実行できます。 $ lua Lua 5.1.4 Copyright (C) 1994-2008 Lua.org, PUC-Rio > print("Hello world") Hello, world > print(1 + 2) 3 > print(type("Hello world")) string print関数の代わりに = を利用することもできます。 > = "Hello world" Hello world > = 1 + 2 3 > = type("Hello world") string print関数 print("Hello world") ...