> From: Stephen White [mailto:spwhite / chariot.net.au] [...] > a = Fred.new.var 10 -> 10 > b = a + 20 -> 30 > c = 30 + a -> 40 > > a = Fred.new.var "12345" -> "12345" > b = a + "hello" -> "12345hello" > c = "world" + a -> "world12345" > > because the interpreter reads in the source, finds "a" by itself, and calls > the "exec" method automatically. I can hook in and define how I want this > variable to behave - in this case, acting exactly like @val. in your world every time your interpreter scans an object in source an #exec is preformed - this would open up the door to class Fred < String def exec; self << self end end - i.e. an immediate infinite loop of exec calls - this does not look right to me. Christoph