Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ruby 3.3.0-Rc1 Released (ruby-lang.org)
40 points by amalinovic on Dec 11, 2023 | hide | past | favorite | 12 comments


Anecdote: I'm personally pretty pleased with the development of Ruby over the past 5y. When I was in high school I picked up a O'Reilly book on RoR and thought to myself that this wasn't going to be a language that was going to be around when I was older. When I was in college I studied C/C++ and really looked down on it, seeing all the footguns and abstraction as a sign of weakness.

20y later (for me), it's still around and doing quite well for such a crowded space (high abstraction, general purpose languages). My company is one of the largest adopters of Ruby. Over the past 2y I've learned to love it and in some ways prefer it to Golang and Python. Godspeed Ruby team, thank you.


Ruby's not a language I hear that much about anymore yet still seems to maintain a very steady market share. Is it the huge existing Rails install base or new language features keeping it going? Is the Rails marketshare larger than Django?


There's a lot of folks who really like Ruby and who find themselves being very productive in it. Rails helps, but Ruby in general has low floors, wide walls, and high ceilings.


Yeah it's pretty much all Rails. Of course there's a long tail of non-Rails Ruby stuff out there, but realistically you can interpret the Ruby marketshare to be the Ruby-on-Rails marketshare.


This is RC1 so I wonder if Shopify, Discourse, GitHub or 37signals has any preliminary figures how much this speeds up their Rails application.


This is from Shopify from back in September (so not this RC release but still useful):

https://railsatscale.com/2023-09-18-ruby-3-3-s-yjit-runs-sho...


37signals is running 3.3 and they posted some info on it...

https://dev.37signals.com/yjit-is-fast/


>Basecamp runs ~18% faster with YJIT.

Thanks, Unfortunately it doesn't state ~18% faster than what? I assume YJIT 3.2? So what's the speed up compared to non-JIT CRUBY?


They don't elaborate enough how M:N scheduler is supposed to be used. Does it only work for ractors?


I'd also like to know if ractors are analogous to erlang processes.

Do we expect to see cooperative or preemptive?


Nothing special here

”Ruby 3.3 adds a new parser named Prism, uses Lrama as a parser generator, adds a new pure-Ruby JIT compiler named RJIT, and many performance improvements especially YJIT.”


- "Major performance improvements over 3.2"

- "Significantly improved memory usage over 3.2"

Seems pretty good to me.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: