
Swift
[Swift] 함수형 프로그래밍과 Closure(클로저)
함수형 프로그래밍함수가 1등 시민(first-class citizen)함수를 타입으로 지정하거나, 인자값으로 넘기거나, 리턴 값으로 받을 수 있다.마치 함수도 객체처럼 변수나 함수의 인자, 리터럴하게 다룰 수 있다 는 것1등 시민 함수람다 계산 Lambda Calculus불변성 Immutable심볼의 값이 변경되지 않는다가변 변수를 사용하는 대신에 심볼에 값을 할당하면 그 값은 변하지 않음→ 변수 값이 변경되는 경우 해당 변수가 가리키고 있는 주소의 값은 변하지 않고, 새로운 주소에 변경된 값을 넣고 그 주소를 바라보게 한다.→ 원본은 변하지 않는다!순수 함수 pure function입력 값이 동일하면 결과 값이 동일하게 리턴되는 함수참조투명성과 부작용순수 함수로 만들면 함수 외부에 값이나 객체를 참조하..