6a9c935f6d84e87b24b58d1ec573c089b5bd338e
[clean-tests.git] / dynamicclass / test.icl
1 module test
2
3 import StdEnv, StdMaybe
4 import Data.Func
5
6 pack :: a -> Dynamic | TC, + a
7 pack a = dynamic a :: a^
8
9 //square :: Dynamic -> Dynamic
10 //square (v :: A.a: a | + a) = dynamic (v + v)
11
12 plus :: Dynamic -> Int
13 plus (plus :: A.a : a -> a | + a) = plus 2 3
14 plus _ = 0
15
16 app :: Dynamic Dynamic -> Dynamic
17 app (db :: A.a: a -> a | + a) (a :: A.a: a | + a) = dynamic (db a)
18
19 dub :: a -> a| + a
20 dub a = a + a
21
22 Start w = typeCodeOfDynamic (dynamic (\x->x + x) :: A.a : a a -> a | + a)