Eric Mahurin wrote:

> Below is what I think is a general purpose solution to making
> references.  I provide several ways to do it.  Here is an
> example:
> 
> a = (0..5).to_a               -> [0,1,2,3,4,5]
> w = ref{"a[2..4]"}            # uses eval
> x = a.ref[2..4]               # uses [] and []= methods
> y = a.ref("[]","[]=",2..4)    # specify methods manually
> z = a.ref(["[]",2..4],["[]=",2..4]) # unique args to get/set
> [...]

This looks very interesting, if only from the toying standpoint. Any 
chance of you pushing this a bit with a RubyForge project and a gem release?