Valen のメモリ安全:新しい借用チェッカー
Evan Ovadia が、Valen 向けの借用チェック設計であるグループ借用を解説する。同一オブジェクトの異なる部分への参照を共存させ、shared-xor-mutable を no use-after-free に緩める仕組みだ。
もっと見る コンパイラ
ホームEvan Ovadia が、Valen 向けの借用チェック設計であるグループ借用を解説する。同一オブジェクトの異なる部分への参照を共存させ、shared-xor-mutable を no use-after-free に緩める仕組みだ。
メモリから鍵を消去するのはmemsetを呼ぶより難しい。最適化コンパイラはその書き込みを削除する権利があり、ストレージは保持されない可能性があり、コンパイラから隠すことにも代償がある。正しいゼロ化に関する連載の第1回。
小さなレジスタアロケータを、ライブインターバルと衝突から固定レジスタとスピルまで段階的に解説する。この設計はスループットよりも明快さを重視しており、ライブラリとしてではなくレシピとして読むことを意図している。
Gleam は以前、Erlang ソースコードにコンパイルして erlc に渡していた。バージョン 1.19 では直接 BEAM バイトコードを生成するようになった。この記事では、それによって得られた利点、なぜ BEAM アセンブリまで踏み込まなかったのか、そしてこの変更がもたらした最適化について説明する。
C++で~trueの結果がtrueになるのは、ほとんどの人の予想に反します。本記事ではその原因を掘り下げ、スコープなし列挙型の整数昇格、ビット単位の否定、そしてこの動作がもはや適切に定義されなくなるケースについて解説します。
Futhark は通常、配列プログラムを GPU カーネルにコンパイルするが、一部のワークロードは多くの CPU コアで回した方が速い。本記事はスパースなヤコビ行列の計算を例に、ターゲットが GPU ではなく CPU になったときコンパイラのどこを変える必要があるかを追う。

MOCHAがコンパイラを未知の異種アクセラレータに迅速対応させたい場合、テストベンチマークはどう選ぶ?SEIは5つの選定基準と9つの候補ハードウェアを挙げ、各チームに目標の推薦を求めた結果、最終的にAMD RDNA 4とTenstorrent Tensixに絞られた。

著者は算術式を二分木に変換するデータ構造の課題を出され、ついでに評価器を書き、数日後にはクロージャ、ガベージコレクション、カスタムメモリアロケータ、REPL、FFIを備えるまでになった。全文でCコードを示しながら段階的に解説する。

Kotlin 2.5.0-Beta1 で KMP に実験的な分離コンパイルが導入され、IDE とコンパイラの解析不一致問題を解決し、共通ソースセットのインクリメンタルコンパイルをサポート。

Rust GCC バックエンドと Rust リポジトリの同期に2か月、大規模リポジトリでの git subtree は振るわず、マーフィーの法則が終始現実となった。
BF言語でゼロからレイトレーサーを実装し、doubleをQ16.16固定小数点数で表現、コードはmTvare6/rayfuckにあります。