#compiler

コンパイラでもっとレジスタを活用するために行った対策

浮動小数点数とポインタを混在させるテクニック(NaN Boxing)

M1Mac向けにコンパイルする(aarch64)

【C】プリプロセッサのマクロ展開アルゴリズム

アーカイブファイルのフォーマット

リンカーを自作した

関数ポインタを返す関数のパースと型の構築

【WASM】Cコンパイラをブラウザ上で動かす

コンパイラを浮動小数点数に対応させる(それと数学関数を実装)

整数の絶対値を得るビットトリック

ELFのオブジェクトファイル形式を生成する

1パスコンパイラでのクロージャの実装方法(Upvalue)

Crafting Interpretersを読んだ

自作Cコンパイラでレジスタ割付

自作Cコンパイラでセルフホスティングを達成した

JITについてお勉強

LispからJavaScriptへのトランスレータを作り始めた

re2cで字句解析(fillについて)

Schemeコンパイラで、ある種の継続をsetjmpに置き換える

Schemeコンパイラで、末尾再帰のクロージャをループに変更する

3impメモ

Schemeのコンパイラで効率のいいループの実現方法、そして3impとの決別

Schemeでの効率のいいループの方法を考える

スクリプト言語で関数の自己再帰の最適化

スタックベースVMのスクリプト言語での末尾呼び出しの実装方法

スクリプト言語での自由変数への代入の実装方法

スクリプト言語でのクロージャの実装方法

「2週間でできるスクリプト言語の作り方」事始め