It’s hard to believe that Crystal has been around for over a decade. I remember when it was a just a fledgling language! Back then, Crystal and Rust both seemed to be competing for the niche of “Ruby-ish bare-metal language.” It’s interesting to see how their design has diverged over time.
A couple interesting projects I’ve come across written in Crystal:
There is also invidious which is a very nice alternative frontend for Youtube !
Hmm, that’s only two data points, but it seems like a trend to write these alternate frontends in Crystal. I wonder why that would be? Is it because they might have written it in Ruby on Rails back in the day, and Crystal has some similar ergonomics? Or nostalgia / familiarity among a specific demographic, in other words?
I really like Crystal, mostly. It’s an interesting language with a lot of nice things in it. So many nice things that it’s actually too much IMO. There’s so many language constructs that it’s difficult to wrap your head around and I find myself quickly forgetting entire things even exist.
I’ve written a few thousands lines of Crystal for fun, and non-profit. It does feel like Ruby most of the time, and gets the job done nicely. I think that if you come from this language, then Crystal won’t feel so large.
Still, coming from years of Ruby, I’ve enjoyed languages that shifted from its paradigms more.
I’ve never seriously used Ruby, but when I did toy with it I didn’t like it much so that explains a lot.
I’ve been writing Crystal in the recent past, right before 1.0. Macros and API docs are lovely most of the time, but the main issue for me was: