def order_list_by_predicate(l, &blk) l.partition{|i| blk.call(i)}.flatten end part(1..6) do |i| i % 2 == 1 end