summaryrefslogtreecommitdiff
path: root/fp2/week3/mart/NotatieDynamics.icl
blob: da906754c79cc8908c26030fd5bf6fe9823ad2cd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
module NotatieDynamics

import StdEnv
import StdDynamic, StdDynamicFileIO

Start = f4 f3

f1 :: Int Int -> Int
f1 (x :: Int) y = x + y

f2 :: Bool a a -> a
f2 (b :: Bool) (e1 :: a) (e2 :: a) = dynamic if b e1 e2 :: a

f3 :: [Int]
f3 = dynamic map fib [1 ..]

fib 0 = 1
fib 1 = 1
fib n = fib (n-1) + fib (n-2)

f4 :: [Int] -> [Int]
f4 (xs :: [Int]) = take 10 xs

f5 :: [Int] -> [Int]
f5 = f4 f3