Search code examples
rubylambdaproc-object

What is happening to this lambda ? could someone explain


proc_obj = -> proto { print proto; puts("World")}

puts proc_obj["Hi"]

puts proc_obj.call("Hello") #Is this is the same as above

please refer me to some link to demystify this ...


Solution

  • What is happening to that lambda is that you're calling its [] method, which causes the lambda to be executed with the argument "Hi". And yes, calling call is the same as calling [].