呢一頁仲未翻譯。英文版本為準。 睇英文版 →

Hello 世界

撰寫你的首個 Sounio 程式

Hello 世界

Hello 世界仍然是驗證你已有一個可用的 souc,一個正確的 stdlib 路徑,以及對 Sounio 程式碼中效應出現方式的基本理解的最佳方式。本頁的目的是不是字串字面量,而是檢查,然後可選地運行一個程式的工作流程。

這個範例證明

  • 函式入口點以 fn main() 寫成。
  • 控制台輸出是效應,所以保守的文檔要求在簽ature 中使用 with IO
  • 一個成功的 check 確認解析、類型檢查、stdlib 解析和選擇的物件都對應於這個文件。

程式

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

驗證工作流程

export SOUC_BIN="$(pwd)/bin/souc"
export SOUNIO_STDLIB_PATH="$(pwd)/stdlib"

"$SOUC_BIN" check examples/hello.sio
"$SOUC_BIN" check hello.sio
"$SOUC_BIN" run hello.sio

為什麼 check 會先出現

  • 已檢入的物件是今天最可靠的公開表面,而 check 是那部分一致匹配文檔契約。
  • run 可能仍然對小程式有效,但執行行為依賴於物件、後端路徑和該建立的任何代碼生成限制。
  • 當一個文檔頁面說明範例是“可工作的”,請先解釋為“在已鎖定的物件下類型檢查清潔”,除非頁面明確說明也驗證了執行。

倉庫指針

  • examples/hello.sio 是跨公共文檔使用的標準檢入固定物件。
  • self-hosted/io/stdio.sioself-hosted/check/effects.sio 是如果你要追蹤語言如何模擬簡單控制台輸出的有用代碼路徑。
  • tests/run-pass/ 當你希望程式運行比 hello world 更多的類型系統時,這是下一步。