投稿日
2013/9/2 月曜日
LLVMによるプログラミング言語の実装チュートリアル日本語訳
第6章 万華鏡: 言語の拡張: ユーザ定義演算子
第1節 第6章のまえがき
“LLVMによるプログラミング言語の実装”チュートリアルの第6章へようこそ。
この時点で我々は、かなり小さいながらも完全な関数型言語を持ってることになる。
しかしまだ、大きな問題がひとつある。
我々の言語は、便利な演算子をほとんど持っていない。(除算や、論理否定や、<以外の比較演算子など)
訳注: if/then/elseやforは式だし、トップレベルの式は全て匿名関数だし、この時点では関数の引数やループ変数を除いて変数は宣言出来ないし、変数への代入はサポートされていないので、確かにこの時点では完全な関数型言語かもしれない。
また、演算子の例で”<以外"となってるのはすでに"<"演算子は万華鏡にビルトインで定義されているから。
この章では、荒っぽい余談(wild digression)となるが、シンプルで”美しい”万華鏡言語にユーザ定義の演算子を追加する。
この余談によって、言語がいくつかの面でシンプルで”醜い”ものになってしまうかもしれないが、それと同時にパワフルさも得るだろう。
自分自身の言語を作るということについて素晴らしいのは、何が良くて、何が悪いのかを自分自身で決定出来るという点にある。
この章において、いくつかの興味深い構文解析テクニックを示す方法として、ユーザ定義演算子を話題にするのも悪くないと考えている。
この章の最後には、マンデルブロ集合を描画する万華鏡アプリを実行する。
最近のコメント
名前
しゅごい
Jane Doe
FYI Avoid Annoying Unexpe…
Jane Doe
ご存じとは思いますが、whileには、”~の間”と…
peta_okechan
針金みたいなパーツを引っ張ると外れます。 他の方の…
虎徹ファン交換
虎徹の標準ファンを外す際に、どのようにして外されま…
花粉症対策2019 – 日曜研究室
[…] 花粉症対策についてはこれまで次の記事を書いてきました。https://…
花粉症対策2019 – 日曜研究室
[…] 花粉症対策についてはこれまで次の記事を書いてきました。https://…
花粉症対策2019 – 日曜研究室
[…] 花粉症対策についてはこれまで次の記事を書いてきました。https://…
花粉症対策2019 – 日曜研究室
[…] 花粉症対策についてはこれまで次の記事を書いてきました。https://…
花粉症対策2019 – 日曜研究室
[…] 花粉症対策についてはこれまで次の記事を書いてきました。https://…