目標相容性
Faber 是一種語言,但有多個編譯契約。本頁是經測量的可降階能力矩陣: 針對 corpus 中的每個術語,列出哪些目標可以將它降階,以及支援程度。
政策動詞(支援 / 消除 / 警告 / 拒絕 / 延後)與管線路由位於 Codegen targets。本頁是下方表格中的大型可掃描 列清單 — HIR 應用途徑目標與 MIR 系統途徑目標並列顯示。
即時 CLI 摘要:faber targets。
渲染時間:unknown,由 faber/scripta/render-matrices.py 基於 radix 測量 JSON 渲染 — 請勿編輯。
測量:emit_hir_target_matrix + emit_mir_target_matrix(程序內完成,不使用外部 toolchain)。
連結:corpus/index.toml 中的 terms → exempla。
這是官方產生的 grammar×target 支援矩陣。它針對 exempla corpus 中的每個 term,報告可降階能力 — target X 是否能將 grammar production Y 降階。 執行期語意(消除/警告/延後政策動詞)、各目標契約與管線路由位於 Codegen targets;該文件連回本頁以顯示這些列。
圖例#
| 符號 | 意義 |
|---|---|
| ✓ | 完整支援 — 該術語的所有可分析 exempla 都能降階 |
| ◐ | 部分支援 — 部分 exempla 能降階,部分存在已測量的缺口 |
| ○ | 已規劃 — 尚未降階;使用整理後的覆寫檔 (scripta/ebnf-matrix-overrides.toml) |
| ✕ | 不支援 — 沒有 exempla 能降階;依預設事實,已測量的缺口確實存在 |
| — | 未測量 — 此途徑上沒有該術語的可分析 exempla |
✓ 表示使用此術語的 corpus exempla 能降階至目標。這不保證執行期語意 完全一致。某些目標會對特定建構進行消除或警告(例如 Go 會消除借用 模式
從/傳入/取自)— 這些仍在此顯示為 ✓,因為它們能降階。此細節請參閱 政策文件。
Corpus 全域摘要(所有已註冊術語)#
應用途徑(HIR → 輸出的原始語言)
| 目標 | 可支援 | 可分析 | % |
|---|---|---|---|
| rust | 373 | 378 | 99% |
| go | 347 | 378 | 92% |
| ts | 378 | 378 | 100% |
| faber | 378 | 378 | 100% |
系統途徑(MIR → 裝置/IR 產物)
| 目標 | 可支援 | 可分析 | % |
|---|---|---|---|
| llvm-text | 334 | 373 | 90% |
| wasm-text | 263 | 373 | 71% |
| wasm | 263 | 373 | 71% |
| sexp-struct | 300 | 373 | 80% |
| sexp | 299 | 373 | 80% |
| runner | 317 | 373 | 85% |