Codaybook

サーバサイドエンジニアが必死に作成した!発見した!を綴るブログ



今何かと話題のCrystalを入れてみる

高い生産性を兼ね備えているOSなプログラミング言語Rubyですが、そのエレガントな文法をそのままに C言語に近いスピードで動作するコンパイル言語CrystalHello Worldしてみました。ちなみにOSOSX10.11.2で本記事の内容を実施しています。

まずは、OSX用パッケージマネージャーのHomebrewをインストールします。以下のサイトでインストール方法が記述されています。
<<Homebrew>>

$ brew update
$ brew install crystal-lang

これでもうCrystal言語導入完了です。ちなみに自分はインストールする際に、エラーが発生したしまいましたが、 だいたいはccコマンドが足りない等のエラーです。エラーの内容をよく確認し不足しているものを導入してください。

さて、プログラミングです。その前に以下コマンドを実行します。

$ crystal init

これでなんと初期プロジェクトファイル(プログラミングして際に必要なGITやディレクト等)を作成してくれます。 これを実施してからプログラミングしましょう。

試しに簡単な引数を与えてその値を2倍するプログラムを書いてみました。

そして、ビルドして実行してみます。

$ crystal build src/Testc.cr
$ ./Testc 4
8

驚くほどRubyの文法でビルドして実行できました。コンパイル速度はかかるもの、C言語に引けを取らないほどの実行速度を誇ります。
Crystalは、ライブラリ経由でC言語の関数を呼び出しやすいように設計されており、 目指すところはC言語の代替物という位置付けになりそうです。 自分の目指すところは、Unityで速度を出したいところはCrystalでという使い方ができないか模索中です。