> So: what can I use instead of eval?

Check out the send method

  def call_method(obj, methodName)
    obj.send(methodName)
  end

  call_method(myObj, 'do_thing')

Chris
http://clabs.org