I've spent a number of years using ruby and I got super excited about the potential of Crystal about a year ago. The notion that I can use a Ruby-like syntax and ship a binary to deploy my web apps was killer. But, a year ago the language was a bit rough, and to some extent, it still is. The team behind it is open about their goals and it blows me away with how much changes on a <i>daily</i> basis for a team of their size. Hopefully, the crystal team can set out to complete what they set their sights on for 2017[1]. That would really round out the feature set for a 1.0 release.<p>I think what I like the most is the community is willing to help you out. Although, nowadays a strong community is what makes or breaks a language.<p>[1] <a href="https://crystal-lang.org/2016/12/29/crystal-new-year-resolutions-for-2017-1-0.html" rel="nofollow">https://crystal-lang.org/2016/12/29/crystal-new-year-resolut...</a>
Anyone compare Nim to Crystal? Both are AOT languages with syntax inspired by dynamic languages (Python & Ruby). Nim transpiles to C and Crystal uses LLVM. I've been playing with Nim, but I have a feeling Crystal will catch on quicker.
Hmm, seems like the author either does not know about JSON.mapping [0] or just chose not to use it. Honestly, the corresponding macro for YAML is the main reason I use Crystal for CLI apps since it comes with the stdlib. YAML is easy enough to write quickly that I don't have to do too much with option parsing. Plus you can just use your editor rather than the shell.<p>[0] <a href="https://crystal-lang.org/api/master/JSON.html#mapping%28properties%2Cstrict%3Dfalse%29-macro" rel="nofollow">https://crystal-lang.org/api/master/JSON.html#mapping%28prop...</a>
BTW the Crystal website has just been redesigned :) <a href="https://crystal-lang.org/" rel="nofollow">https://crystal-lang.org/</a>
Dangit, doesn't work natively on windows without bash :(<p>And I'm all windows lately. Guess I can try it on my mac but that's like over there.<p>I do love the multi-platform-ness and single file of go, so it'll be cool to try this and get some ruby love.
I really, really like crystal but was bitten a few times on a project because it is still not quite ready for primetime.<p>Because its so young, there have been a handful of breaking changes which affected my code a few times (and even worse, my dependencies).<p>They have a good concurrency model but I'm waiting for them to add parallelism.<p>I mostly just crave the solidarity in tooling, dependencies, APIs, compiler options/performance which will come after hitting 1.0 (i hope). I'm excited for the day I can go all in. Keep it up Crystal team!