클로져만 있으면 함수형이라는 사람도 있고, 참조 투명성 얘기하는 사람도 있고, 순함수 얘기하는 사람도 있고, 불변값 얘기하는 사람도 있고.
기준이 뭐라고 보냐?
클로저는 탑레벨 정의로 대체 할 수 있음. 나는 참조 투명성 + 불변성 이라고 생각함.
참조 투명성하고 불변성을 언어적으로 제약을 걸어두면 확실히 함수형이고, 그렇지 않으면 적어도 프로그래머가 저걸 지키도록 권장해야지.
나는 함수형 정의를 느슨하게 잡아서 일급 함수(클로저)와 고차 함수가 지원되느냐로 봄. 거기에다가 강타입 시스템과 불변성 지원되면 강한 함수형 언어라고 보고. - dc App
한마디로 map하고 fold 구현할 수 있는 언어는 나한테는 다 함수형임 - dc App
나는 언어가 함수형이다 아니다는 그냥 만든놈들이 갖다붙이기 나름이고 기능별로 봐야한다고봄
그냥 정도의 차이지 뭐. 하스켈도 따지고 보면 100% 순수 아닌데 - return 0;
http://m.dcinside.com/board/github/4660- dc App
IO 모나드만 있는게 아닌데 ㅇㅅㅇ - return 0;
어디가 순수하지 않아요?? - dc App
Haskell is almost pure in the sense that it does admit controlled side effects both in the form of exceptions and in the form of calls to special 'functions' like unsafePerformIO which ar - return 0;
그 함수 쓰면 순수하지 않긴 하죠 ... - dc App
클로저는 탑레벨 정의로 대체 할 수 있음. 나는 참조 투명성 + 불변성 이라고 생각함.
참조 투명성하고 불변성을 언어적으로 제약을 걸어두면 확실히 함수형이고, 그렇지 않으면 적어도 프로그래머가 저걸 지키도록 권장해야지.
나는 함수형 정의를 느슨하게 잡아서 일급 함수(클로저)와 고차 함수가 지원되느냐로 봄. 거기에다가 강타입 시스템과 불변성 지원되면 강한 함수형 언어라고 보고. - dc App
한마디로 map하고 fold 구현할 수 있는 언어는 나한테는 다 함수형임 - dc App
나는 언어가 함수형이다 아니다는 그냥 만든놈들이 갖다붙이기 나름이고 기능별로 봐야한다고봄
그냥 정도의 차이지 뭐. 하스켈도 따지고 보면 100% 순수 아닌데 - return 0;
http://m.dcinside.com/board/github/4660
- dc App
IO 모나드만 있는게 아닌데 ㅇㅅㅇ - return 0;
어디가 순수하지 않아요?? - dc App
Haskell is almost pure in the sense that it does admit controlled side effects both in the form of exceptions and in the form of calls to special 'functions' like unsafePerformIO which ar - return 0;
그 함수 쓰면 순수하지 않긴 하죠 ... - dc App