削除された内容 追加された内容
Ef3 (トーク | 投稿記録)
→‎ソースコードからのビルド: 多くの場合、インストールされた crystal はスタティック リンクされているので、ダイナミック リンク版の crystal を入手するには、ソースコードからビルドします。 また、interactive Crystalを有効にするためにも、ソースコードからのビルドが必要です。 crystal は、ソースコードが Github の https://github.com/crystal-lang/crystal.git で公開されているので、必要に応じてソースコードからビルドすることができます。 crystalは、セルフホスティング<ref>crystalコンパイラーを始めとする、crystalの言語処理系(標準ライブラリーを含む)とツールチェインやユーティリティーなどは、crystal自身で書かれています。</ref>なので、最初にバイナリーを入手してブートストラップするか、クロスビルドしたバイナリーを持込むか、パッケージシステムからインストールし、ターゲットでセルフコンパイル出来る状態を作る方法があります。
タグ: 2017年版ソースエディター
Ef3 (トーク | 投稿記録)
→‎Setは組込みクラス: Crystalでは、Set(集合)は組込みクラスなので、<code>require "set"</code>は不要です。
タグ: 2017年版ソースエディター
176 行
</syntaxhighlight>
: Crystal では、数値リテラルに _ で始まるサーフィックスを付け { i:符号付き整数, u:符号なし整数, f:浮動小数点数 } と { 8,16,32,64,128 } のビット幅の組合せです<ref>[https://crystal-lang.org/reference/1.5/syntax_and_semantics/literals/ Literals]</ref>。
 
=== Setは組込みクラス ===
Crystalでは、Set(集合)は組込みクラスなので、<code>require "set"</code>は不要です。
 
;集合の例:<syntaxhighlight lang=crystal>
a = Set.new(10.times)
b = Set.new(5.times.map{|i|2*i})
p! a,
b,
a + b,
a - b,
a & b,
a | b
a ^ b
</syntaxhighlight>
;実行結果:<syntaxhighlight lang=text>
a # => Set{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
b # => Set{0, 2, 4, 6, 8}
a + b # => Set{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
a - b # => Set{1, 3, 5, 7, 9}
a & b # => Set{0, 2, 4, 6, 8}
a | b # => Set{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
</syntaxhighlight>
 
=== for式がない ===