ユーザ用ツール

サイト用ツール


tutorial:nim:hello_world

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
tutorial:nim:hello_world [2024/08/20 02:04] – 削除 - 外部編集 (不明な日付) 127.0.0.1tutorial:nim:hello_world [2024/08/20 02:04] (現在) – ↷ tutorial:nim:hello-world から tutorial:nim:hello_world へページを名称変更しました。 freemikan
行 1: 行 1:
 +====== Hello World! ======
 +
 +Nimのインストールが無事に終わって''nim''コマンドが使えるようになったところで、さっそくコードを書いて動かしてみることにします。最初のプログラムは予想される通り、伝統的なHello Worldです。テキストエディタを起動して次のコードを打ち込みます。
 +
 +<file nim>
 +echo "Hello, world!"
 +</file>
 +
 +1行だけと極めてシンプルになっています。この内容のファイルを適当な作業用ディレクトリに、__hello.nim__という名前で保存します。Nimで書かれたプログラムを実行するには、コンパイルを必要とします。''nim c hello.nim''とすることでコンパイルできます。
 +
 +<cli>
 +$ nim c hello.nim
 +Hint: used config file '/home/freemikan/.choosenim/toolchains/nim-2.0.2/config/nim.cfg' [Conf]
 +Hint: used config file '/home/freemikan/.choosenim/toolchains/nim-2.0.2/config/config.nims' [Conf]
 +......................................................................
 +Hint:  [Link]
 +Hint: mm: orc; threads: on; opt: none (DEBUG BUILD, `-d:release` generates faster code)
 +27611 lines; 0.118s; 30.383MiB peakmem; proj: /home/freemikan/code/NimTutorial/hello.nim; out: /home/freemikan/code/NimTutorial/hello [SuccessX]
 +</cli>
 +
 +やや冗長なメッセージが出力されますが、//[SuccessX]//というところに目を向けると、正常に完了したであろうことが窺えます。''nim c hello.nim''の代わりに、''nim compile hello.nim''とすることも出来ます。コンパイルの結果、__hello__という名前の実行可能ファイルが生成されます。それを実行してみます。
 +
 +<cli>
 +$ ./hello
 +Hello, world!
 +</cli>
 +
 +期待通りの結果が得られました。
 +
 +''nim''には、コンパイルと実行を同時に行ってくれるサブコマンド''r''もあります。
 +
 +<cli>
 +$ nim r hello.nim
 +Hint: used config file '/home/freemikan/.choosenim/toolchains/nim-2.0.2/config/nim.cfg' [Conf]
 +Hint: used config file '/home/freemikan/.choosenim/toolchains/nim-2.0.2/config/config.nims' [Conf]
 +Hint: mm: orc; threads: on; opt: none (DEBUG BUILD, `-d:release` generates faster code)
 +10086 lines; 0.014s; 10.488MiB peakmem; proj: /home/freemikan/code/NimTutorial/hello.nim; out: /home/freemikan/.cache/nim/hello_d/hello_47C5784933AC9B407791D45AD5FD951C951DB01D [SuccessX]
 +Hint: /home/freemikan/.cache/nim/hello_d/hello_47C5784933AC9B407791D45AD5FD951C951DB01D [Exec]
 +Hello, world!
 +</cli>
 +
 +最下行に//Hello, world!//と出力されていることが確認できます。同様のことを行う別のオプションもあります。''nim compile --run hello.nim''や、''nim c -r hello.nim''でも同じ結果が得られます。
 +
 +''nim''はJavaScriptにコンパイルする能力も備えています。
 +
 +<cli>
 +$ nim js hello.nim 
 +Hint: used config file '/home/freemikan/.choosenim/toolchains/nim-2.0.2/config/nim.cfg' [Conf]
 +Hint: used config file '/home/freemikan/.choosenim/toolchains/nim-2.0.2/config/config.nims' [Conf]
 +.......................................
 +Hint: opt: none (DEBUG BUILD, `-d:release` generates faster code)
 +21576 lines; 0.054s; 19.828MiB peakmem; proj: /home/freemikan/code/NimTutorial/hello.nim; out: /home/freemikan/code/NimTutorial/hello.js [SuccessX]
 +</cli>
 +
 +__hello.js__が生成されています。Node.jsでこれを実行することが出来ます。
 +
 +<cli>
 +$ node hello.js
 +Hello, world!
 +</cli>
 +
 +WebブラウザでHTMLに読み込んで実行することももちろん可能です。
  

特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki