diff options
| -rw-r--r-- | .radicle/native.yaml | 1 | ||||
| -rw-r--r-- | lambda-calcul/haskell/challenges.json | 19 |
2 files changed, 20 insertions, 0 deletions
diff --git a/.radicle/native.yaml b/.radicle/native.yaml index 882bc71..f633d23 100644 --- a/.radicle/native.yaml +++ b/.radicle/native.yaml @@ -26,5 +26,6 @@ shell: | cp "$EXE" ${HOME}/.local/bin/ cp -fr public "${HOME}/.config/lambda/" + cp challenges.json "${HOME}/.config/lambda/" sudo systemctl restart lambda fi diff --git a/lambda-calcul/haskell/challenges.json b/lambda-calcul/haskell/challenges.json new file mode 100644 index 0000000..1261721 --- /dev/null +++ b/lambda-calcul/haskell/challenges.json @@ -0,0 +1,19 @@ +[ + {"level":0, "expr": "x"}, + {"level":1, "expr": "y"}, + {"level":2, "expr": "#%foo"}, + {"level":3, "expr": "(lam (x) x)"}, + {"level":4, "expr": "(x y)"}, + {"level":5, "expr": "((lam (x) x) y)"}, + {"level":6, "expr": "((lam (x y) x) z)"}, + {"level":7, "expr": "((lam (x y) x) z t)"}, + {"level":8, "expr": "((lam (x y) x) z t foo)"}, + {"level":9, "expr": "(let ((id (lam (x) x))) (id z))"}, + {"level":10, "expr": "(let ((id (lam (x) x))) (id z))"}, + {"level":11, "expr": "(let ((False (lam (f t) f))\n (True (lam (f t) t))\n (Not (lam (b) (b True False))))\n (Not True))"}, + {"level":12, "expr": "(let ((False (lam (f t) f))\n (True (lam (f t) t))\n (Not (lam (b) (b True False))))\n (Not (Not True)))"}, + {"level":13, "expr": "(def False (lam (f t) f))\n (def True (lam (f t) t))\n (def Not (lam (b) (b True False)))\n (Not (Not True)))"}, + {"level":14, "expr": "(def False (lam (f t) f))\n (def True (lam (f t) t))\n (def Not (lam (b) (b True False)))"}, + {"level":15, "expr": "(def Or (lam (a b) (a b True)))"}, + {"level":16, "expr": "(Or (Not True) False)"} +] |
