32 comments

[ 3.4 ms ] story [ 65.8 ms ] thread
I'm sorry but this is a new post (posted yesterday) which appears to be specifically about 0.34, which should be worth discussing about the changelog?
Links don't imply that something shouldn't have been posted! They are just for curious readers to explore further. It's a way of sharing the riches of HN's archives.

Sometimes I spell this out explicitly: https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que.... But it gets tedious to keep repeating. I'm still looking for a brief, unambiguous wording that doesn't lead to misunderstanding.

(Separately, it's true that HN normally shouldn't have a new front page thread for each incremental release of a project, because there are many more of those than there are slots on the front page. Users tend to upvote them reflexively as a sort of referendum on projects they like, and the threads is almost always a discussion of the project in general rather than of the specifics of a release. Those do get repetitive. But I wasn't implying anything about that with links.)

You could use the first paragraph of this comment in every post with links. For me that's explicit enough, even if a bit long to type. But you could save it somewhere and paste in the comment.
Alas, that would be too pasty. The hivemind breaks out in hives with that much repetition.
I hope someday Crystal will supplant Java.
(comment deleted)
Where is there use-case overlap with the JVM ecosystem and crystal?
I guess AOT compiled jRubby/TruffleRuby.
I suppose the obvious answer is web back-ends, though that is true of practically every language.
First they need to support Windows as well as Java 1.0 did back in 1996, then they have 25 years to catch up.

Plus the JVMs already have jRubby and TruffleRuby, including AOT support.

That is unlikely to happen. Crystal has no corporate backing, it has no distinguishing features (in comparison to other, more popular languages), and most of all, it has no Rails.
It would be nice if we could use the C FFI to allow seamless interaction between MRI ruby and Crystal.

Allowing us to profile and easily port parts of an existing rails or ruby app would be really useful.

Crystal has Lucky and Amber — both are reasonable for small fun projects. They're still missing what makes Rails Rails, though. Rails is much more than MVC. It's the Ruby ecosystem and the tooling that really allow Rails to become what it is, and that is hyper-productive. You don't spend time reinventing the wheel, you spend time working on domain-specific problems.

Sure, chicken vs egg, but while everyone is hopping from language to language, framework to framework, packaging system to packaging system because they saw it on Reddit or HN, I'll be over here shipping Ruby and contributing to the Crystal ecosystem in my spare time.

Crystal is comparable to Java in performance. I am impressed with it. See https://github.com/nukata/little-scheme#performance and https://github.com/nukata/little-scheme#performance-on-the-t...
I have just updated my Scheme interpreter in Crystal (https://github.com/nukata/little-scheme-in-crystal), which I used on the above benchmark test, along to Crystal 0.34.

The release notes of Crystal 0.34 say "Having as much as possible portable code is part of the goal of the std-lib. One of the areas that were in need of polishing was how Errno and WinError were handled. The Errno and WinError exceptions are now gone, and were replaced by a new hierarchy of exceptions." So I have modified

    rescue ex: Errno
      raise ErrorException.new(ex.message, NONE) if ex.errno == Errno::EPIPE
to

    rescue ex: IO::Error
      raise ErrorException.new(ex.message, NONE) if ex.os_error == Errno::EPIPE
though it is still dependent on POSIX. >_<
If only all the attention and love for Golang goes for Crystal. I will keep dreaming... :)
All Crystal needs, is 1 major company to support it. :(
I worked on a simple cli-tool using crystal over the last few weeks, and it has been pretty great. The standard-library is nifty, and there are shards for common problems (not everything though).

Waiting eagerly for a way to cross-compile to Windows so I can build/release binaries the way golang projects do.

Today I found out Crystal was a language that I didn't know existed until now, however one thing I couldn't work out about Crystal was a simple outline of its intended reason for existence/purpose?

i.e. You should consider Crystal instead of Ruby/lang-other for xxx because yyyy... or is this someone attempting to write a new language simply because they want to have what they think is 'the right thing' (which is perfectly acceptable, but not clear if this is the only reason).

I guessed it was inspired by Ruby from the syntax, but aside from not having too many variations of do..while, I couldn't easily discern what its intended reason for being is.

(I kind of got the comment about the best thing about it is there is no Rails for Crystal).

I did poke around quite a bit and it's not in the FAQ, so it probably should be.

Types and speed. Also native.
How is this an innovation? Kotlin and C# are probably faster on average. Also Kotlin can be native