このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

リテラル

リテラルとは、具体的なデータを直接的に表現する構文の意味だろう。Prologの「リテラル」(原子論理式またはその否定)のような全然別な意味もあるが。

普通の感覚だと、数値12や文字列"hello"はリテラル。最近のプログラミング言語では、タプル、リスト、マップなどのリテラルも持つ。古めの言語だと、コンストラクタや専用の関数を呼び出さないと複合データは作れないことがる -- これは不便。

JavaScriptリテラル構文をベースにしたデータ記述言語がJSON。多くのプログラミング言語では、JSONリテラルを当該言語のリテラルに翻訳できるが、複合データ構造ではコンストラクタ/関数などに頼るケースもあるだろう。

変数参照や関数呼び出しに頼らないで書けるのがリテラルのメリットなので、変数参照や関数呼び出しを含む式(expression, term)はリテラルとは呼ばない。