함수형은 뭐 다르냐? 어차피 머신코드로 돌아가지않나
재귀함수가 비용이 큰 구조인데 함수형하는애들은 재귀를 빨자나 왜그런거?
익명(165.246)
2016-03-31 12:39
추천 0
댓글 4
다른 게시글
-
근데 본인이 잘하면 야근할 일 없음익명(175.223) | 16.03.31추천 0
-
개발은 B와 D사이의 C다. [1]원서읽기(becomeking) | 16.03.31추천 1
-
궁금한데 해킹쪽으로 활동하는사람들 [5]랄라(223.62) | 16.03.31추천 0
-
오오미 MS가 새로운 C#을 만들어 부렀어 [1]익명(207.244) | 16.03.31추천 0
-
애들아 [2]sh(68.145) | 16.03.31추천 0
-
스팀OS VR에서 돌리는거보니 지리던데 [1]흐린바다(1214qwer) | 16.03.31추천 0
-
지금 컴터에서 버스에 한번에 통과하는 비트수가 몇개임?익명(223.62) | 16.03.31추천 0
-
MS가 하는 짓을 조금만 생각해봐.. [2]ㅇㄱㄹㅇㅂ..(121.164) | 16.03.31추천 0
-
사실상 C++이 자바급이 되었다는 엄청난 장점도 있군 [1]익명(207.244) | 16.03.31추천 0
-
대한민국에서 스티브잡스나 빌게이츠될거아니면 [1]ㅋㅋ(110.70) | 16.03.31추천 0
재귀함수는 아는데 어디다쓰는지는 잘모르겟어요...
재귀함수를 완전히 빠른 기계어로 최적화하는 것은 하스켈 컴파일러도 못하고있는 상태임. 꼬리재귀최적화랑 Stream Fusion같은게 있긴 하지만 곳곳에서 자유롭게 쓰이는 재귀함수를 전부 최적화하는 것은 명백한 한계가 있음
근데 퍼포먼스를 위해서 재귀함수를 안쓴다는건 넌센스지. 함수형 프로그래밍으로 높은 퍼포먼스를 내는 프로그램 작성은 현재도 활발히 연구중인 분야고(Concurrency, Parallel Computing) 재귀함수의 최적화 관련해서는 구조적 재귀(Structural Recursion)라고 재귀함수를 호출하는 구조를 제한해서 특정한 범위안에서 최적화를 가능하도록 하는데 하스켈의 Catamorphism을 활용한 fold를 비재귀함수로 바꾸는 방법등이 그 예임
퍼포먼스 잘내고 싶으면 기계의 구조를 반영하는 언어인 C언어나 그 근처 언어를 쓰렴