생성일: 2019년 12월 25일
수정일: 2023년 08월 18일
수정일: 2023년 08월 18일
4clojure - Intro to Trampoline (76)
문제
(= __
(letfn
[(foo [x y] #(bar (conj x y) y))
(bar [x y] (if (> (last x) 10)
x
#(foo x (+ 2 y))))]
(trampoline foo [] 1)))
풀이
[1 3 5 7 9 11]
trampoline 함수에 대한 사용법을 알게 하는 문제 이다. 함수를 엮고, 파라미터 값의 변경을 유지해주는 뭔가 reduce, do 이런 함수들로 연상이 되었다. 어찌어찌 분석을 하면서 풀긴 했지만 좀 더 사용법에 대해서는 알 필요성은 있다.