3 ms·
This was honestly what crossed my mind as I read that article as well. They're basically asking for Crystal and it's already done. Static type checks, performan
by jug 5y ago
This was honestly what crossed my mind as I read that article as well. They're basically asking for Crystal and it's already done. Static type checks, performance, fibers and channels. As a bonus things like compile time null checks.
- nirvdrum 5y agoWhile they're looking for some features from Crystal, the point of adding some of this stuff is to have it without the expensive port to another language or platform. Crystal lacks metaprogramming, which would be hugely disruptive for many applications, and every application dependency would need to find a Crystal replacement. I think what's being played out is the maturation of a platform. Ruby and Rails have been around for a while now and there are many large Ruby codebases out there. The Ruby standard library is fairly comprehensive. The dependency management debate has largely been settled. So, a focus on performance and taking advantage of multi-core systems is a natural area to shift focus to. Adding a progressive, opt-in, type system can help navigate large applications. At the end of the day, all of this new stuff can be ignored if you want. Ruby will still be Ruby. But, if you do want to use one of these new features, you won't have to go through the time-suck of porting to a different language.