git.iko.soy/rowtype-yoga/purescript-native
on 34a00a0 help sign in
26 lines 1.1 kB history raw
1module Main where
3import Data.Function
4import Control.Monad.Eff
5import Debug.Trace
7f = mkFn2 $ \a b -> runFn2 g a b + runFn2 g b a
9g = mkFn2 $ \a b -> case {} of
10 _ | a <= 0 || b <= 0 -> b
11 _ -> runFn2 f (a - 1) (b - 1)
13main = do
14 runFn0 (mkFn0 $ \_ -> trace $ show 0)
15 runFn1 (mkFn1 $ \a -> trace $ show a) 1
16 runFn2 (mkFn2 $ \a b -> trace $ show [a, b]) 1 2
17 runFn3 (mkFn3 $ \a b c -> trace $ show [a, b, c]) 1 2 3
18 runFn4 (mkFn4 $ \a b c d -> trace $ show [a, b, c, d]) 1 2 3 4
19 runFn5 (mkFn5 $ \a b c d e -> trace $ show [a, b, c, d, e]) 1 2 3 4 5
20 runFn6 (mkFn6 $ \a b c d e f -> trace $ show [a, b, c, d, e, f]) 1 2 3 4 5 6
21 runFn7 (mkFn7 $ \a b c d e f g -> trace $ show [a, b, c, d, e, f, g]) 1 2 3 4 5 6 7
22 runFn8 (mkFn8 $ \a b c d e f g h -> trace $ show [a, b, c, d, e, f, g, h]) 1 2 3 4 5 6 7 8
23 runFn9 (mkFn9 $ \a b c d e f g h i -> trace $ show [a, b, c, d, e, f, g, h, i]) 1 2 3 4 5 6 7 8 9
24 runFn10 (mkFn10 $ \a b c d e f g h i j-> trace $ show [a, b, c, d, e, f, g, h, i, j]) 1 2 3 4 5 6 7 8 9 10
25 print $ runFn2 g 15 12
26 trace "Done!"