# Young Generation - Rubinius
Rubinius is an implementation of the Ruby programming language. The Rubinius bytecode virtual machine is written in C++. The bytecode compiler is written in pure Ruby. The vast majority of the core library is also written in Ruby, with some supporting primitives that interact with the VM directly.
Author: Less Than Three. <3. http://less.thanthree.com

1.2.3

## Young Generation

This topic has missing or partial documentation. Please help us improve it.

See How-To - Write Documentation

Objects that have been alive for more than one GC cycle live in the Young generation space. A run of the GC handles moving objects into the Young generation space automatically.

Objects live in the young generation space for X number of collections. X is dynamically adjusted based on how many objects are being promoted.

If too many objects are promoted during a given GC cycle, then X goes up. If not enough objects are promoted during a given GC cycle, then X goes down.

This is done in order to keep the rate of promotion stable. stable in this context means a low rate of change in object promotion.