From: Matt Maycock Date: 2004-08-12T06:00:59+09:00 Subject: Re: FirstEachLast, an extension to the Enumerable module. I also *just* decided this would be a good addition to Enumerable#PositionVariable from my previous msg... def method_missing(sym, *args, &block) if sym.to_s =~ /\?$/ then meth = "index_#{sym}".intern @enum.send(meth, @index) else super(sym, *args, &block) end end now you can do enum.each_with_pos {|e, pos| if pos.first? then .... end } still just need the enums to have the right index_??? functions... -Matt -- There's no word in the English language for what you do to a dead thing to make it stop chasing you.