ความเข้ากันได้ของเป้าหมาย
Faber เป็นภาษาเดียวที่มีสัญญาการคอมไพล์หลายรูปแบบ หน้านี้คือ เมทริกซ์ความสามารถในการลดรูปที่วัดได้: สำหรับคำแต่ละคำใน corpus จะแสดงว่า เป้าหมายใดลดรูปได้ และรองรับในระดับใด
คำกริยาตามนโยบาย (รองรับ / ลบออก / เตือน / ปฏิเสธ / เลื่อน) และการกำหนดเส้นทาง ของ pipeline อยู่ที่ Codegen targets หน้านี้คือ รายการแถวขนาดใหญ่ที่อ่านกวาดได้ — เป้าหมาย application-lane ของ HIR และ เป้าหมาย systems-lane ของ MIR แสดงเคียงกันในตารางด้านล่าง
สรุปจาก CLI แบบสด: faber targets
เรนเดอร์โดยอัตโนมัติ: unknown โดย faber/scripta/render-matrices.py จาก JSON การวัดของ radix — ห้ามแก้ไข
การวัด: emit_hir_target_matrix + emit_mir_target_matrix (ภายในกระบวนการ ไม่มี toolchain ภายนอก)
การเชื่อมโยง: terms ใน corpus/index.toml → exempla
นี่คือ เมทริกซ์ support ของ grammar×target ที่สร้างอย่างเป็นทางการ โดยรายงาน ความสามารถในการลดรูป — target X ลดรูป grammar production Y ได้หรือไม่ — สำหรับทุก term ใน exempla corpus ความหมายขณะรัน (คำกริยานโยบาย erase/warn/defer), สัญญารายเป้าหมาย และการกำหนดเส้นทาง pipeline อยู่ใน Codegen targets ซึ่งลิงก์กลับมาที่หน้านี้เพื่อดูแถวต่าง ๆ
คำอธิบายสัญลักษณ์#
| สัญลักษณ์ | ความหมาย |
|---|---|
| ✓ | รองรับเต็มรูปแบบ — exempla ที่วิเคราะห์ได้ทั้งหมดของ term ลดรูปได้ |
| ◐ | รองรับบางส่วน — exempla บางรายการลดรูปได้ แต่อีกบางรายการมีช่องว่างที่วัดได้ |
| ○ | วางแผนไว้ — ยังลดรูปไม่ได้; curated overlay (scripta/ebnf-matrix-overrides.toml) |
| ✕ | ไม่รองรับ — ไม่มี exempla รายการใดลดรูปได้; ช่องว่างที่วัดได้เป็นความจริงตามค่าเริ่มต้น |
| — | ยังไม่ได้วัด — ไม่มี exempla ที่วิเคราะห์ได้สำหรับ term นี้บน lane นี้ |
✓ หมายความว่า corpus exempla ที่ใช้ term นี้ลดรูปไปยัง target ได้ แต่ไม่ได้ รับประกันว่าความหมายขณะรันจะเหมือนกันทุกประการ target บางรายการ ลบออก หรือ เตือน สำหรับ construct บางชนิด (เช่น Go ลบโหมดการยืม
จาก/ใน/ออก) — รายการเหล่านั้นยังแสดงเป็น ✓ ที่นี่ เพราะลดรูปได้ โปรดดูรายละเอียดในเอกสารนโยบาย
สรุปทั้ง corpus (ทุก term ที่ลงทะเบียน)#
เลนแอปพลิเคชัน (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% |