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.sio和self-hosted/check/effects.sio是如果你要追蹤語言如何模擬簡單控制台輸出的有用代碼路徑。tests/run-pass/當你希望程式運行比 hello world 更多的類型系統時,這是下一步。