Ruby lambda vs Proc.new: Differences, Return Behavior, and When to Use Each | CodeTrail