Ruby의 블록, Proc, 람다: 클로저의 미묘한 차이점
2025-05-21
이 글에서는 Ruby에서 블록, Proc, 람다의 차이점을 자세히 설명합니다. 이 세 가지는 모두 코드를 그룹화하여 실행하기 위한 것이지만, 미묘한 차이점이 있습니다. Proc는 객체이므로 변수에 할당하거나 메서드를 호출할 수 있지만, 블록은 메서드 호출 구문의 일부일 뿐입니다. 메서드 호출에서는 블록을 최대 하나만 사용할 수 있지만, Proc는 여러 개 사용할 수 있습니다. 람다는 인수의 개수를 확인하지만, Proc는 확인하지 않습니다. 또한, 람다와 Proc는 `return` 키워드를 다르게 처리합니다. 이 글에서는 클로저, Proc와 람다의 이름 유래, 람다 계산과 익명 함수에 대해서도 간략하게 설명합니다.
개발