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とすればエラーの発生を再現できる.

to be continued…


An introduction to the Hare programming language