Hey, Genius quiz. I'm trying with my solution to avoid using def/class etc. and solve just using the meta-programming methods (and without evaling random strings); "just for fun", though I'm coming unstuck with defining a method that can accept a block as a second argument.... Module.instance_eval do define_method :attribute do |arg| .... block_given? and yield always fail, and "do |arg,&block|" isn't legal syntax...any suggestions? Cheers, Tris