Win a copy of Think Java: How to Think Like a Computer Scientist this week in the Java in General forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

GC in ruby

 
aparna dingankar
Greenhorn
Posts: 9
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Congrats for promotion of The Well-Grounded Rubyist book. Have one question I have doubt regarding garbage collection feature in Ruby . Is it same as Java. And how open is Ruby to other platforms ? I hope I get answers for my doubts..
 
Lasse Koskela
author
Sheriff
Posts: 11962
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Regarding garbage collection, Ruby's is way, way behind the JVM (Java) and the CLR (.NET). The biggest difference is that Ruby's garbage collection is non-generational, meaning that when Ruby's GC does its sweep, it iterates through all objects checking they're eligibility for garbage collection. Googling for "ruby garbage collection" gives you some pretty good (and more elaborate) descriptions of how Ruby's garbage collection is implemented.

Regarding openness to other platforms, Ruby itself has the ability to integrate native libraries which you can then use to bridge to other platforms such as Java (through JNI). However, perhaps the more relevant interoperability strategy is to run your Ruby code on JRuby, which is a Ruby implementation running on the JVM.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic