Hacker News new | ask | show | jobs
by Normille 1793 days ago
The language itself is very interesting. I've dabbled a few times and really like the clean ruby-esque syntax.

What puts me off delving further is the lack of support in various editors / IDEs / Treesitter etc. I think the core development team should really devote some resources to this, as I'm sure I'm not the only one deterred by this dearth of tooling.

7 comments

Lack of support for native Windows[1] is probably not helping adoption as well.

[1] https://github.com/crystal-lang/crystal/issues/5430

I’ve been playing with Crystal a lot (every night) for the last few months.

It’s really fun language, and I don’t have even have any Ruby background!

The main pain points from where I’m sitting are things like debugging and incremental compiling. You can throw lack of tooling in there too I suppose.

The dev team knows and is working on these, but they are a small community based team so don’t expect they same resources as in Go or Swift.

FWIW I’ve been having good experiences with Sublime.

As per my original post, while the lack of tooling is my biggest pain point around the language ecosystem, inside the language itself, my main gripe is with the error messages. I find them quite impenetrable a lot of the time. Which is not ideal when confronting a new language.

Crystal could take a leaf out of V or Rust's book here. Whatever you think of the languages themselves, the error messages are top notch. Errors that say "Ah. I see what you were trying to do here. Maybe you should try this instead?" are so much more helpful than "Why on earth did you do that?!"

I am also having a better experience with sublime than with vs code.
There's a few LSP implementation that are very usable: https://github.com/crystal-lang-tools/scry, https://github.com/elbywan/crystalline

Beginning of a tree-sitter parser here too: https://github.com/keidax/tree-sitter-crystal

Honestly, until they provide some more support at least in the editors and IDEs field and support native Windows Crystal is not going to be more than a fun tool. I like it, because the general developer experience I had was really pleasant, but I cannot really use it for work.
My personal experience has been pleasant, and i think it is a bit faster than go. Also the easy syntax and better object Oriented features is a plus.
Which IDE/editor do you use? I've had good experiences with Sublime and VS Code.
I like the language but I haven’t tried it out yet. I’ve heard that the compile times can be very long. Is that improved or are there workarounds?
There will be an interpreter, so at least the feedback loop when developing will be fast enough.

Time to compile an optimized binary will be still slow for the foreseeable future.

That's great news! Is the interpreter being developed already? Anywhere we can follow the progress?
It's kinda working right now, with some missing features like exceptions raising and catching, block closures, c-library binding (only libc works IIRC).

You can follow the activity here: https://github.com/crystal-lang/crystal/pull/10910

I was pleasantly surprised myself that the interpreter actually already somewhat worked, as you can see in the demo: https://www.youtube.com/watch?v=een_W1YEICw&list=PLe1-A91ZPT...

The creator also claimed that the interpreter only need a few more months to finish.