hare言語について。 公式のTutorial(Genaral language introduction)の実践.
はじめに(Getting started)
hello_world.ha
use fmt;
export fn main() void = {
fmt::println("Hello world!")!;
};
インストールを行ったあと,上記コード(ファイル名hello_world.ha
)を作成しhare run hello_world.ha
を実行する.hare run
はコンパイルと実行を一括で実行しているので,コンパイルと実行を分割して行う場合はhare buld -o example hello_world.ha
として作成されたexample
プログラムを実行する.出力結果はHello world!
.
ほりさげる(Breaking down “Hello world”)
最初の行ではimport
で標準ライブラリのfmt
モジュールを導入する. このモジュールはテキスト整形用で,println
関数を提供していて,これでテキストと改行コードを出力する.
プログラムの_入口_はmain
関数で実行環境がたちあがったらまずこの関数を実行する. この関数の型はHare言語の標準規格で.引数なし(main()
),戻り値なし(void
)で定義されている. そしてこの関数は"exported"され,Hare言語のランタイムが使えるようにしなければならない. 関数ではfmt
モジュールのprintln
関数をよんで,“Hello world!“を出力している.
エラー処理(Error handling in “Hello world”)
関数の呼出しに続く!
演算子はerror assertion operator
といって,標準出力の書き込みに失敗する可能性があるのでここでエラー処理を書かなければならないことを示す.この演算子なしでコンパイルがとおらない(エラーを無視できない). 本来はいけないですが,単にエラーが出ることを許容して実行させるなら,単にこの演算子を使うだけでコンパイルを通すことができる. もしエラーが発生した場合はプログラムはクラッシュする. hare run hello_world.ha > /dev/null
とすればエラーの発生を再現できる.