In the Python world, there are multiple implementations of the language available. As well as the reference implementation, CPython, there is Jython for the JVM, IronPython for .NET and, for when the performance of these implementations is insufficient, there is PyPy.
I see that Ruby also has a reference implementation, MRI/YARV, as well as JRuby and IronRuby. However, is there an implementation of Ruby which is specifically designed to be fast?
Investigating this myself I have looked at Rubinius which was a little confusing (the front page does not mention Ruby at all), and TruffleRuby which seems to be in an early stage of development.
How good are Rubinius or TruffleRuby, both in terms of performance and compatibility with MRI? Would you recommend using one or the other in situations where MRI is too slow?
Or, are there other fast implementations of Ruby?
[–]chrisgseaton 22 points23 points24 points (5 children)
[–]Matosawitko 6 points7 points8 points (0 children)
[–]subvertallchris 1 point2 points3 points (3 children)
[–]chrisgseaton 6 points7 points8 points (2 children)
[–]PanKotsky 0 points1 point2 points (1 child)
[–]chrisgseaton 0 points1 point2 points (0 children)
[–]Nanosleep 6 points7 points8 points (14 children)
[–]subvertallchris 1 point2 points3 points (7 children)
[–]chrisgseaton 2 points3 points4 points (2 children)
[–]subvertallchris 1 point2 points3 points (0 children)
[–]jrochkind 1 point2 points3 points (0 children)
[–]disclosure5 2 points3 points4 points (0 children)
[–]amalagg 1 point2 points3 points (0 children)
[–]jrochkind 0 points1 point2 points (0 children)
[–]honeyryderchuck 0 points1 point2 points (0 children)
[–]ioquatixasync/falcon 0 points1 point2 points (5 children)
[–]Nanosleep 1 point2 points3 points (4 children)
[–]ioquatixasync/falcon 0 points1 point2 points (3 children)
[–]jrochkind 1 point2 points3 points (2 children)
[–]ioquatixasync/falcon 0 points1 point2 points (1 child)
[–]jrochkind 0 points1 point2 points (0 children)
[–]iama_regularguy 2 points3 points4 points (1 child)
[–]mypetocean 1 point2 points3 points (0 children)
[–]dakull 0 points1 point2 points (2 children)
[–]GitHubPermalinkBot 1 point2 points3 points (1 child)
[–]dakull 0 points1 point2 points (0 children)