Better than methodphitamine?
I think this one is prettier (but maybe not as sophisticated):
module Enumerable def method_missing(sym, *args) if (sym.to_s =~ /^(.+)_with$/) && (msg = args.shift) send($1.to_sym) do |x| x.send(msg, *args) end end end end [1, 2, 3].map_with :to_s