From: Dave Thomas Date: 2000-03-09T21:44:01-06:00 Subject: [ruby-talk:01796] date2 and the new Symbol stuff date2.rb has a neat method to cache the results of method calls def once(*ids) for id in ids module_eval <<-"end;" alias_method :__#{id}__, #{id} def #{id.id2name}(*args, &block) def self.#{id.id2name}(*args, &block); @__#{id}__ end @__#{id}__ = __#{id}__(*args, &block) end end; end end once :julian However, using the new Symbol code, this doesn't run, as ":__#{id}__" expands to ":__:julian__". I could either submit a patch which changed all the {id}'s to {id.id2name}, or we could change Symbol.to_s to return "julian", not ":julian". Which is the better solution? Regards Dave