From 6dd581a25f668607b790aa90c03616c7bbc01d13 Mon Sep 17 00:00:00 2001 From: crumbtoo Date: Thu, 8 Feb 2024 16:42:57 -0700 Subject: [PATCH] examples --- examples/{ => Core}/sumList.cr | 0 examples/constDivZero.cr | 3 --- examples/factorial.cr | 7 ------- examples/rlp/SumList.rl | 11 +++++++++++ 4 files changed, 11 insertions(+), 10 deletions(-) rename examples/{ => Core}/sumList.cr (100%) delete mode 100644 examples/constDivZero.cr delete mode 100644 examples/factorial.cr create mode 100644 examples/rlp/SumList.rl 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 +