Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Ruby is slow, but it is however faster than Python last I checked, with like for like code.

Python gives you other interesting ways of going fast (a lot of high performance plugins for numerics, Cython, and so on), while Ruby is a higher level more expressive language IMO, so you have more ways to shoot yourself in the foot more powerfully.



Depends how you use it, just last week I’ve hit 40 nanoseconds unpacking a 8 megabyte msgpack array and accessing one of its values in a hash.

As long as you only use ruby as glue code for c(++) extensions it’s pretty fast.


AFAIK with the latest JIT in some contexts pure Ruby can be faster than using C libraries, just because the VM can be better optimized and there is no overhead in moving data between the two realms.

I don't recall exactly where I read it, but I think was a while ago when they announced one of the newest JIT engines.


I recall something similar statement and I think it was from the YJIT team, they suggested that more and more people write pure Ruby rather than using C extensions because the YJIT compiler cannot see C code, it's like a black box to it, so it cannot optimize it further. Which means that in practical examples, YJIT has been able to optimize pure Ruby code to the extent that it in some cases not only beat the C extension but also surpassed it

More Ruby code means more room for optimizations that the team can identify and add to the compiler


if you want c extensions to get (de)optimized at runtime based on their usage patterns there is always ruby on graalvm from oracle.


You're thinking of TruffleRuby right? Yeah I have it bookmarked actually, it's performance is quite impressive



So you don't actually know?


> As long as you only use ruby as glue code for c(++) extensions it’s pretty fast.

Another way of saying that is "as long as you don't use it it won't slow you down".




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

Search: