From: Eric Hodel Date: 2006-02-19T05:24:46+09:00 Subject: Re: define_method fun On Feb 17, 2006, at 7:32 PM, Patrick Ritchie wrote: > Hi All, > > I just setup the following in one of my classes, I'll let the code > speak for itself: > > ["<", "<=", ">", ">=", "==", "<=>"].each do |op| > define_method(op) { |comparison| eval "#{self.order} #{op} # > {comparison.order}" } > end > > Ruby continues to impress me with it's ability to do so much in so > few amazing readable lines of code. > > Are their any good reasons not to declare my op methods this way? > Is their an even more efficient way to achieve the same effect? class YourClass include Comparable def <=>(other) self.order <=> other.order end end -- Eric Hodel - drbrain@segment7.net - http://segment7.net This implementation is HODEL-HASH-9600 compliant http://trackmap.robotcoop.com