mafinar

mafinar

Thinking about learning Crystal, let's discuss

So I was thinking of trying out Crystal, I had tried it multiple times but left it midway. Now that there’s a book on it and it’s version 1.0 (not that pre-1.0 ever stopped me from learning a language), I was thinking of giving another dive.

My previous experience with the language was good, I mean, I never used Ruby but they do have similarities and I like that type of syntax. It’s pretty fast too. The only con for me was the editor support, compared to that, Nim has much better editor support (It has a pleasurable syntax in front of a performant system but I think I like Crystal syntax more).

Does anyone have any shareable views about Crystal? Any advice/suggestions/feelings on it? Anyone planning on learning it?

Most Liked

OvermindDL1

OvermindDL1

For using a NIF you do not want to use a language that has a GC, because it will conflict with the Erlang BEAM GC unless you are very very very careful about where data is ‘owned’ and that you prevent the GC from running on any of the BEAM threads, but as long as you can verify all that then it’s fine.

On a crystal side I messed with it for a couple small tools, doesn’t seem bad but not really my style. For something C’ish like that I’d go more for Nim or so (though for most things I’d go Rust nowadays anyway). Plus when I last tried it, it still had a GIL, so no parallelization.

AstonJ

AstonJ

I would be up for this! Since I know Ruby hopefully it wouldn’t be too hard getting familiar with Crystal too.

One thing I always thought might be good is using it for Elixir/Erlang nifs, but I think @OvermindDL1 said this may not be a good fit.

Other than that, would it be good to use for things like graphical work? Do you know what the Crystal core team are targeting it at?

(Speaking of the core team, I think I spoke to one or two of them via Twitter a few years ago and they always came across as very nice and very much in the spirit of Ruby… which is always a huge plus :+1:)

AstonJ

AstonJ

Ah yeah I think I remember it being about GC now (I started a dedicated thread about languages that don’t GC here) :blush:

I’d like to try nim too at some point, maybe after rust :smiley:

Where Next?

Popular Backend topics Top

AstonJ
Or which features of current frameworks you use you feel you couldn’t live without?
New
New
finner
Just wondering how many devs out there are using Spring Reactive, specifically WebFlux?
New
New
New
mafinar
So I was thinking of trying out Crystal, I had tried it multiple times but left it midway. Now that there’s a book on it and it’s version...
New
mafinar
This is going to be a long an frequently posted thread. While talking to a friend of mine who has taken data structure and algorithm cou...
New
almokhtar
Howdy, folks i have this question about it is ok to learn two different programming languages same time, well my story is i joined a comp...
New
mafinar
We always have fun in this forum around this time of the year, discussing the days’ (or yesterdays’) challenges and talking through solut...
New
KnowledgeIsPower
Do you just use plain Terraform alone? Do you use CDK for Terraform or other supporting tools (e.g. Terraform Cloud ) for Terraform?
New

Other popular topics Top

PragmaticBookshelf
Stop developing web apps with yesterday’s tools. Today, developers are increasingly adopting Clojure as a web-development platform. See f...
New
dasdom
No chair. I have a standing desk. This post was split into a dedicated thread from our thread about chairs :slight_smile:
New
AstonJ
You might be thinking we should just ask who’s not using VSCode :joy: however there are some new additions in the space that might give V...
New
AstonJ
There’s a whole world of custom keycaps out there that I didn’t know existed! Check out all of our Keycaps threads here: https://forum....
New
New
PragmaticBookshelf
Tailwind CSS is an exciting new CSS framework that allows you to design your site by composing simple utility classes to create complex e...
New
New
PragmaticBookshelf
Build modern server-driven web applications using htmx. Whatever programming language you use, you’ll write less (and cleaner) code. ...
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New
AstonJ
This is cool! DEEPSEEK-V3 ON M4 MAC: BLAZING FAST INFERENCE ON APPLE SILICON We just witnessed something incredible: the largest open-s...
New