Crystal
crystal でコンパイル中に以下のエラーがでてしまいました。 Invalid memory access (signal 11) at address 0x7f452d062b98 [0x7f456c052ee6] ??? [0x7f456bfa9a6b] ??? [0x7f456ce20491] ??? make: *** [Makefile:19: build] エラー 1一旦メモ...
Crystal で空配列を作ろうとすると以下のようにエラーになります。 icr(0.33.0) > array = [] for empty arrays use '[] of ElementType' 空配列を作るには型(クラス)を指定しないといけないようです。 (以下数値型の場合) icr(0.33.0) > array = [] of Int3…
crystal と node を使ったアプリの開発環境を準備しようとしたところ依存ライブラリが複雑で準備に時間がかかってしまいました。 そんな時、Docker multi stage build という方法が解決策になったので、ここにメモしたいと思います。 multi stage build とは…
プログラム内である数を0で割る処理をしてしまった場合は、ZeroDivisionError という例外が発生して次の処理に移ることができなくなります。その場合、例外処理を入れてみます。 begin hoge = 10 / 0 rescue p "0で割れません" end ただこれだと、好みにもよ…
Ruby ライクなプログラミング言語 crystal で 面白い print デバッグがあったのでここにメモを残します。 'pp!'というデバッグのやり方があり、これは変数と展開された値が確認できるというものです。 REPL の icr で検証してみました。 icr(0.33.0) > a = 1…
Ruby ライクなプログラミング言語 crystal について勉強してます。今回は型の判定方法についてです。 crystal で is_a? というメソッドを使うと、型の判定が行えます。 実際に使うと以下のような感じです。ユニオン型の変数で確認してみます。 icr(0.33.0) >…
Ruby ライクなプログラミング言語 crystal について勉強してます。 今回は Crystal でユニオン型の変数について演算を行う際に苦労したので、ここにメモを残します。 REPL の icr で検証してみました。まずはユニオン型の変数(a)を作ります。 icr(0.33.0) > …
Ruby ライクなプログラミング言語 crystal について勉強しています。 今回は「crenv」を入れてみたのでその時のメモを残します。 crenvとは 手順 crenv インストール 利用できるバージョンを一覧表示 crystal インストール crystal バージョン確認 local に…