ืคืืจืกื ืฉืืจืืจ ืฉืคืช ืืชืื ืืช Crystal 1.5, ืืฉืจ ืืคืชืืื ืื ืกืื ืืฉืื ืืื ื ืืืืช ืืคืืชืื ืืฉืคืช Ruby ืืืื ืืืฆืืขื ืืืคืืืงืฆืื ืืืืืืื ืืืืคืืื ืืื ืืฉืคืช C. ืืชืืืืจ ืฉื ืงืจืืกืื ืงืจืื ืืจืืื, ืื ืืื ื ืชืืื ืื ืืืืคื ืืื, ืืืจืืช ืฉืืืง ืืชืืื ืืืช ืจืืื ืคืืขืืืช ืืื ืฉืื ืื. ืงืื ืืืืืจ ืืชืื ืืงืจืืกืื ืืืืคืฅ ืชืืช ืจืืฉืืื Apache 2.0.
ืืฉืคื ืืฉืชืืฉืช ืืืืืงืช ืืืคืืก ืกืืืืช, ืืืืืฉืืช ืืื ืฆืืจื ืืฆืืื ืืืคืืจืฉ ืืช ืกืืื ืืืฉืชื ืื ืืืืจืืืื ืืื ืฉื ืืฉืืื ืืงืื. ืชืืื ืืืช ืงืจืืกืื ืืืจืืืืช ืืงืืฆื ืืคืขืื, ืืืฉืจ ืคืงืืืืช ืืืงืจื ืืืขืจืืืช ืืงืื ืฉื ืืฆืจ ืืืื ืืืืืืจ. ืืชืืื ืืช ืงืจืืกืื ืืคืฉืจ ืืืืจ bindings ืฉื ืืชืื ื-C. ืืงืืืื ืฉื ืืืฆืืข ืืงืื ืืชืืฆืขืช ืืืืฆืขืืช ืืืืช ืืืคืชื "spawn", ืืืืคืฉืจืช ืืืจืืฅ ืืฉืืืช ืจืงืข ืืืืคื ืืกืื ืืจืื ื, ืืืื ืืืกืื ืืช ืืืื ืืจืืฉื, ืืฆืืจื ืฉื ืืืืื ืงืืื ืื ืงืจืืื ืกืืืื.
ืืกืคืจืืื ืืกืื ืืจืืืช ืืกืคืงืช ืกื ืืืื ืฉื ืคืื ืงืฆืืืช ื ืคืืฆืืช, ืืืื ืืืื ืืขืืืื CSV, YAML ื-JSON, ืจืืืืื ืืืฆืืจืช ืฉืจืชื HTTP ืืชืืืื ื-WebSocket. ืืืืื ืชืืืื ืืคืืชืื, ื ืื ืืืฉืชืืฉ ืืคืงืืื "crystal play", ืืืืืฆืจืช ืืืฉืง ืืื ืืจื ื (localhost:8080 ืืืจืืจืช ืืืื) ืืืืฆืืข ืืื ืืจืืงืืืื ืฉื ืงืื ืืฉืคืช Crystal.
ืฉืื ืืืื ืขืืงืจืืื:
- ืืืืืจ ืืืกืืฃ ืืืืงื ืืืชืืื ืฉื ืฉืืืช ืืจืืืื ืืื ืืืืฉืื ืฉืืื ืืืคืฉืืช ืืืืืืจืชื. ืื ืงืืืืช ืื-ืืชืืื ืฉื ืฉื, ืืื ืคืงืช ืืขืช ืืืืจื: ืืืืงื ืืืคืฉืืช FooAbstract abstract def foo(ืืกืคืจ : Int32) : ืืืืงื ืืคืกืืช Foo < FooAbstract def foo(ืฉื : Int32) : Nil p name end end 6 | def foo(name : Int32) : Nil ^โ ืืืืจื: ืคืจืืืจ ืืืงืื 'name' ืืชืืื ืืคืจืืืจ 'number' ืฉื ืืฉืืื ืื ืืืชื FooAbstract#foo(number : Int32), ืืขื ืฉื ืฉืื ื ืืขืฉืื ืืืฉืคืืข ืขื ืืขืืจืช ืืจืืืื ืืื ืืฉื
- ืืืฉืจ ืืงืฆื ืืจืืืื ื ืืืชืืื ืื ืืืืคืกืช ืืขืจื ืฉื ืืฉืชื ื, ืืืจืืืื ื ืืืืื ืืขืช ืืกืื ืืืฉืชื ื ืืื. class Foo @x : Int64 def initialize(x) @x = x # ืคืจืืืจ x ืืืงืื @x end end
- ืืืคืฉืจ ืื ืืืืกืืฃ ืืขืจืืช ืืคืจืืืจืื ืฉื ืฉืืืืช ืื ืคืงืืืืช ืืืงืจื. def foo(@[MaybeUnused] x); ืกืืฃ # ืืกืืจ
- ื ืืกืคื ืชืืืื ืืฉืืืืฉ ืืงืืืขืื ืืืืืื ืืฉืืืช ืืืคืืืื. KEY = "s" foo = {s: "ืืืจืืืช", n: 0} ืืฆืื foo[KEY].size
- ื ืืกืคื ืฉืืืืช File#delete? ืืืฉืืช ื-File API ืืืืืงืช ืงืืฆืื ืืกืคืจืืืช. ื-Dir#delete?, ืฉืืืืืจืื false ืื ืืงืืืฅ ืื ืืกืคืจืืื ืืกืจืื.
- ืืืื ื ืขื ืฉืืืช File.tempfile ืืืืงื, ืืฉืจ ืืขืช ืืื ื ืืืคืฉืจืช ืชืืื null ืืฉืืจืืช ืืืืฆืจืืช ืืช ืฉื ืืงืืืฅ.
- ื ืืกืฃ ืืฉืชื ื ืกืืืื NO_COLOR, ืืฉืจ ืืฉืืืช ืืืืฉืช ืฆืืข ืืคืื ืืืืจ ืืืชืืจืืื.
- ืืขืืืื ืืืฆื ืืชืืจืืื ืฉืืคืจื ืืฉืืขืืชืืช.
ืืงืืจ: OpenNet.ru