関数

関数定義、戻り値、エフェクト注釈。

関数

関数は今も式指向で、effect 注釈が副作用を示す公開契約の手段です。

本日時点で確認済み

  • 明示的な with ... effect は現在も言語契約の実体です。
  • 単純な binding と parameter ではローカルな型推論が機能します。
  • 理想的な文章やディレクトリ名よりも、tests と gate artifact を強い根拠として扱ってください。

現在の注意点

  • より豊かな handler モデルは設計上存在しますが、実行サポートはまだ一様ではありません。
  • 実際の挙動は、リポジトリ上のファイルだけではなく、使用している souc バイナリそのものに依存します。

このリポジトリで確認する

fn add(a: i32, b: i32) -> i32 {
    a + b
}

fn log(msg: string) with IO {
    println(msg)
}