你的第一个程序

一个今天就能编译运行的小例子,以及规范层面的认识论版本。

你的第一个程序

今天更有价值的第一个程序,是明确保留 epistemic 数据的程序。可以从 Knowledge<T> 和有意设置的 unwrap 边界开始。

今日已验证

  • Knowledge<T> 仍然要求显式 unwrap 边界,而不是静默提取。
  • 显式 with ... effect 仍然是语言真实合同的一部分。
  • 带有置信度边界的 compile-fail fixture 属于已验证合同。

当前限制

  • 完整的不确定性和 provenance 模型在 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