p = Proc.new { |*args,&block| } produces syntax error p = Proc.new { |*args,&block| } ----------------------^ It appears that Proc objects cannot receive blocks?