This Ruby gem is meant as a proof of concept for promoting the Ruby Change Request 335. The RCR was rejected but Sather iterators made it into Ruby 1.9 anyway :-)

The code itself is a single small module. The “proper” way to install it is as a gem. It is also available via

Using it is pretty simple, just use si_loop instead of loop and prefix each iterator method invocation with .si. For example:

si_loop do
  x =
  y =

See the documentation for si.rb for details.