logoalt Hacker News

pelcg • today at 2:30 PM • 4 replies • view on HN

Is Crystal even relevant at all now?

It isn't interoperable with Ruby and I don't know of any reputable companies using Crystal.

It just looks like Ruby, but it isn't Ruby and it is a compiled language? OK?

I am not sure why I should learn this language?


Replies

dimgl • today at 3:33 PM

What a ridiculously negative comment. Obviously ragebait, but I'll bite anyways.

Did you forget that until five minutes ago humans used to read the code? And they needed to understand it? Yes, there was an actual desire for great Ruby-like syntax without the implications of using it, like its performance characteristics and the need for an interpreter.

Yes, it didn't go mainstream. Should we all abandon every project we've ever worked on because they're not "relevant"?

abound • today at 2:34 PM

> I don't know of any reputable companies using Crystal.

Kagi uses Crystal for their search backend [1]. How they feel about that today and whether that was the right call are, of course, separate questions.

[1] Previous thread: https://news.ycombinator.com/item?id=38421149

yxhuvud • today at 2:31 PM

Because it is a nice language to write elegant and performant code in. If that is not enough motivation I guess it is not a language for you.

➕ show 2 replies
sho • today at 3:14 PM

Prior to LLMs, Crystal was my language of choice when I needed a distributable binary. It works great for this, and for the kind of packages I was writing - mostly agent-daemons lurking in servers - the networking worked great. The only real alternative was golang, which I've never really liked and has (had?) a more complicated linking story too. The typing worked well too, if used with discipline - if it compiled, I could be pretty confident it would work. I still have systems deployed running Crystal agents, in production, without issue or memory leaks, for years.

LLMs though - I confess they've changed the calculus. Now I no longer have to look at the language, and obey its stupid ideas about error handling, I just use golang for its better library support. But I still have a soft spot for Crystal!