入門Luaプログラミング第1章 はじめの一歩
- 作者: 上野豊
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2007/12/22
- メディア: 単行本
- 購入: 4人 クリック: 144回
- この商品を含むブログ (35件) を見る
文字列
文字列リテラルの表記について。3つ登場しますが、3つ目だけはあまり馴染みがない表記です。
おなじみシングルクォートでの文字列リテラル。
> print('"double quote"') "double quote" > print('C:\\Users\\') C:\Users\ > print('line\nfeed') line feed
こちらもおなじみダブルクォートでの文字列リテラル。
> print("'single quote'") 'single quote' > print("C:\\Documents and Settings\\") C:\Documents and Settings\ > print("line\nfeed") line feed
あまりなじみのない角括弧での文字列リテラル。今まで大括弧と読んでましたが、あまり望ましくない読み方のようで……
> print([["double quote" + 'single quote']]) "double quote" + 'single quote' > print([[C:\WINDOWS\]]) C:\WINDOWS\ > print([[line\nfeed]]) line\nfeed > print([[ >> hear >> docu >> ment ?]]) hear docu ment ?
コメント
コメントの表記について。1行コメントと複数行コメントがあります。
1行コメントの表記です。
> -- 1行コメントだよ > -- コメントコメント
SQLもこの表記だったような気がします。
続いて複数行コメントの表記です。
> --[[ >> 複数行コメントだよ >> コメントコメント >> ]]--
忘れてしまいそうな表記ですねえ……
本には
--[[ ]]--
と書いてありますが
--[[ ]]
でいいようです。
ブロック
Luaでは
a = 1
のようなものを文と読び、これの集まりをブロックと呼びます。
Luaでは改行も空白も同じものとみなすので、
a = 1 b = 2
という変態的な記述ができます。これは、以下の2つと等価です。
a = 1 b = 2
a = 1; b = 2;
まあ、普通に書くとしたら後者2つのどちらかでしょうか……
テーブル
いわゆるハッシュや連想配列のようなもの…でしょうか。(というかそのもの?)
テーブルの表記は以下のようにします。中括弧…じゃなかった、波括弧で囲むあたりが少しだけJavaScriptに似てなくもないでしょうか。
> chrome = { >> javascriptEngine = "V8", >> renderingEngine = "WebKit", >> vendor = "Google" >> }
テーブル内の項目は変数でなくフィールドと呼び、フィールドへは"."を使ってアクセスします。
> print(chrome.javascriptEngine) V8 > print(chrome.renderingEngine) WebKit > print(chrome.vendor) Google
構造体やレコード型の変数のメンバにアクセスする感じでしょうか。
以上、入門Luaプログラミング第1章でした。