module Fib where fib_naive :: Int -> Int fib_naive 0 = 0 fib_naive 1 = 1 fib_naive n = fib_naive (n-1) + fib_naive (n-2) fib_memo :: Int -> Int fib_memo n = xs !! n where xs = (map . go) (xs !!) [0..] go f 0 = 0 go f 1 = 1 go f n = f (n-1) + f (n-2)

이런거 소개한적이 없는것 같아서 ㅇㅇ