Localized V2 rewrite for this language is in progress. Showing English-first content for now.

示例

在仓库中哪里可以找到可运行的 Sounio 代码。

示例

这个仓库里有两处很好的“已验证可用”的 Sounio 代码来源:

  • tests/run-pass/: CI 使用的小而聚焦的程序(学习语法的最佳材料)
  • examples/: 更大的 demo 与领域代码(其中一些可能是 aspirational,或需要特性开关)

运行一个测试用例

souc run tests/run-pass/hello.sio
souc run tests/run-pass/for_in_loops.sio
souc check tests/run-pass/async_basic.sio

COVID 2020 内核(类型拒绝)

使用 2020 年 3 月内核展示时间有效性与认知约束在编译阶段的强制执行:

souc check tests/run-pass/covid_2020_kernel.sio

预期行为:仅在时效与置信约束满足时通过编译。

万古霉素传播(临床安全)

同时运行传播示例与拒绝用例:

souc check tests/run-pass/vancomycin_propagation.sio
souc check tests/compile-fail/vancomycin_low_conf.sio

预期行为:

  • 传播示例通过,并展示不确定性传播
  • 低置信处方用例在编译阶段失败(epsilon

一些典型片段

Hello world:

fn main() with IO {
    println("Hello, Sounio!")
}

Match:

let y = match x {
    0 => 10
    1 => 20
    _ => 30
}

显式 Knowledge<T> unwrap:

let k = Knowledge { value: 42.0 }
let x: f64 = k.unwrap("accepted for demo")

下一步