最初のプログラム
いまのコンパイラで動く小さなエンドツーエンド例と、仕様レベルのエピステミック版。
最初のプログラム
今の段階で意味のある最初のプログラムは、epistemic データを明示したまま扱うものです。Knowledge<T> と意図的な unwrap 境界から始めてください。
本日時点で確認済み
Knowledge<T>は今も silent extraction ではなく、明示的な unwrap 境界を要求します。- 明示的な
with ...effect は現在も言語契約の実体です。 - 信頼度境界つき compile-fail fixture は、検証済み契約の一部です。
現在の注意点
- 不確実性と provenance の完全なモデルは、今日の検証済み artifact よりも spec と stdlib 文書の方が豊かです。
- 実際の挙動は、リポジトリ上のファイルだけではなく、使用している
soucバイナリそのものに依存します。
このリポジトリで確認する
fn main() with IO {
let dose = Knowledge { value: 42.0 }
let accepted: f64 = dose.unwrap("demo boundary")
println(accepted)
}
"$SOUC_BIN" check first_program.sio