LLVMでフィボナッチ数を計算する
- 2016-05にLLVMでフィボナッチ数を計算するプログラムを書いた
- LLVM Language Reference Manual — LLVM 4.0 documentationを参考にした
- 人間が書く言語ではない
背景
自作のプログラミング言語をLLVM対応させて, ネイティブコンパイルしたくなった.
なので, まずLLVMの内部言語を知ろうと考えた. そのために, とりあえず, フィボナッチ数を計算するプログラムを書いた.
そういう記憶がある.
なお, 肝心の自作プログラミング言語は放置されている. そもそもがネタだから仕方がない.
ソースコード
感想
いかんせん書いたのが2016-05なので記憶が曖昧だが, C言語がどれほど高級な言語か思い知らされた.
x86アセンブリの方が簡単なレベルにつらい.
低級で超冗長な言語でデータが不変だと, とてもつらいことがわかった.
こことかこことか簡単に推論出来るだろ? 冗長すぎるだろ… とか思いながら書いていたが, よく考えたら人間が書く言語ではなかった.
その点, アセンブリ言語は今もまだ人間が書くこともあるので, まだllvmよりは優しいのかもしれない.
それと, ドキュメントの非公式日本語訳のバージョンが古く, 記述が矛盾していてしばらく詰まった記憶がある.