A categorical programming language
修订版 | 9b941f62dfd09a62d6f48d9cceab9869ba844f3b (tree) |
---|---|
时间 | 2022-01-09 14:32:00 |
作者 | Corbin <cds@corb...> |
Commiter | Corbin |
Add several monads and comonads.
@@ -0,0 +1 @@ | ||
1 | +snd |
@@ -0,0 +1 @@ | ||
1 | +(pair fst id) |
@@ -0,0 +1 @@ | ||
1 | +fun/app |
@@ -0,0 +1 @@ | ||
1 | +(case left id) |
@@ -0,0 +1 @@ | ||
1 | +right |
@@ -0,0 +1 @@ | ||
1 | +(comp (pair id (fun/const nil)) cons) |
@@ -0,0 +1 @@ | ||
1 | +(curry fst) |
@@ -1,3 +1,22 @@ | ||
1 | +* Literate Cammy | |
2 | + * RPython modules will go in rpy/rcammy/ | |
3 | + * RPython entrypoints will go in rpy/ | |
4 | + * Write filterSource expressions to grab only one entrypoint + modules | |
5 | + * Nix expressions also go in rpy/ next to entrypoints | |
6 | + * Entrypoints: | |
7 | + * cammy-weave $HIVE: document a hive | |
8 | + * cammy-tangle $HIVE: take an expression on stdin, return framed optimized | |
9 | + expression on stdout | |
10 | + * cammy-frame $HIVE | jelly | |
11 | + * cammy-draw ...: take an expression and canvas params, make a PNG | |
12 | + * cammy-frame $HIVE: take an expression on stdin, return framed expression | |
13 | + on stdout | |
14 | +* Other entrypoints | |
15 | + * Split and cleanup movelist | |
16 | + * cammy-typecheck: take an expression on stdin, print its type | |
17 | + * cammy-djinn: take a closed type, return expression with that type on | |
18 | + stdout | |
19 | + | |
1 | 20 | * list/eq : [X × X, 2] → [[X] × [X], 2] |
2 | 21 | * list/zip : [X] × [Y] → [X × Y] |
3 | 22 | * list/tail : [X] → [X] |
@@ -9,6 +28,7 @@ | ||
9 | 28 | * Typechecker errors are inscrutable |
10 | 29 | * Trigonometric functions |
11 | 30 | * f-atan2 added, need f-sin and f-cos? |
31 | + * Optimizations for odd/even functions? | |
12 | 32 | * Transcendental and other constants |
13 | 33 | * Euler's constant e |
14 | 34 | * Euler's constant gamma |