diff --git a/examples/sumList.cr b/examples/Core/sumList.cr similarity index 100% rename from examples/sumList.cr rename to examples/Core/sumList.cr diff --git a/examples/constDivZero.cr b/examples/constDivZero.cr deleted file mode 100644 index da116f5..0000000 --- a/examples/constDivZero.cr +++ /dev/null @@ -1,3 +0,0 @@ -k x y = x; -main = k 3 ((/#) 1 0); - diff --git a/examples/factorial.cr b/examples/factorial.cr deleted file mode 100644 index 1080c7b..0000000 --- a/examples/factorial.cr +++ /dev/null @@ -1,7 +0,0 @@ -fac n = case (==#) n 0 of - { <1> -> 1 - ; <0> -> (*#) n (fac ((-#) n 1)) - }; - -main = fac 3; - diff --git a/examples/rlp/SumList.rl b/examples/rlp/SumList.rl new file mode 100644 index 0000000..9386c2f --- /dev/null +++ b/examples/rlp/SumList.rl @@ -0,0 +1,11 @@ +data List a = Nil | Cons a (List a) + +foldr :: (a -> b -> b) -> b -> List a -> b +foldr f z l = case l of + Nil -> z + Cons a as -> f a (foldr f z as) + +list = Cons 1 (Cons 2 (Cons 3 Nil)) + +main = foldr f 0 list +