Rubyでつくるコンパイラ
自己紹介
名前
はたけやまたかし ( @htkymtks ) htkymtks.icon
所属
永和システムマネジメント
好きなもの
低レイヤ
自作CPU
自作コンパイラ
自作CPU
10番目のフィボナッチ数を計算する自作CPU
https://gyazo.com/6c04bae1752a3562549d656ac14241af
自作コンパイラ
Apple M1へ移植したMinCamlでレイトレーシング
https://gyazo.com/8c5f6f3f69b1265a9d4fc3255d2a09b5
話すこと
最小の手間でコンパイラを作るための工夫
コンパイラ作成のコツ
意外と簡単だよ
コンパイラの
コンパイラの勉強がてら、Rubyを使って小さな言語のコンパイラを作ったよ
コンパイラの作成って難しそうに感じるけど、思っているよりも簡単だよ
次のステップ
これを理解すれば簡単なコンパイラはつくれる
コンパイルの最低限の理解
構文解析はminrubyのパーサを利用する
整数リテラルからスタートして、インクリメンタルに機能を追加していく
コンパイラエクスプローラで逆コンパイル
用語集
アセンブラ
アセンブリ言語で書かれたプログラムを機械語(バイナリコード)に変換するためのソフトウェア
2024-06-03
話したいこと
コンパイラの勉強がてら、小さな言語のコンパイラをRubyで作ったよ
字句解析と構文解析に minruby を使うことで、コンパイラをお手軽に作成可能に
漸進的なコンパイラ開発のすすめ
いくつかの便利テクニック
コンパイラエクスプローラ
objdump
参考になりそうなの
jitコンパイラの書き方
https://gyazo.com/ecc5680db8b496b89075a325fb80286b
メモ
マインドマップにまとめた
言語の名前
TinyRuby
ToyRuby