Actions
Feature #12957
closedA more OO way to create lambda Procs
    Feature #12957:
    A more OO way to create lambda Procs
  
Status:
Feedback
Assignee:
-
Target version:
-
Description
Currently to create a lambda Proc one has to use lambda { } or -> { }. For doing metaprogramming it would be nice to have a more OO way to generate them. Something like LambdaProc.new. That way one could write:
class MetaThingy
  def initialize proc_class
    @anonymous_function = proc_class.new do
      # Some Code
    end
  end
end
and pass in either Proc or LambdaProc depending on their needs, instead of:
class MetaThingy
  def initialize proc_type
    @anonymous_function = case proc_type
                          when :proc
                            proc do
                              # Some Code
                            end
                          when :lambda
                            lambda do
                              # Some Code
                            end
                          end
    end
  end
end
This is not a common use case, but would help make the language more orthogonal.
Actions