aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md22
1 files changed, 14 insertions, 8 deletions
diff --git a/README.md b/README.md
index 80cc8ba..4fa6bc7 100644
--- a/README.md
+++ b/README.md
@@ -13,24 +13,30 @@ it probably has lots of bugs as well.
## example
+the file `test/bool.toytt` defines some elementary functions on booleans.
+
```
-$ dune exec toytt
-(\b -> bool-elim b at x -> bool [ true => false, false => true ] :: (b : bool) -> bool) false
+toytt> not false
+true : bool
+toytt> and false
+\y -> false : bool -> bool
+toytt> xor true false
true : bool
+toytt> or true bool
+ → error[E302]
+ 1 | or true bool
+ ^ type mismatch:
+ expected: bool
+ found: type
```
-at the moment the interface is a broken REPL which exits if you make a mistake
-(TODO). the above example illustrates the syntax for lambdas, boolean
-intro & elim, inline type annotations (`::`) and pi types with the boolean
-not-function applied to `false` (which evaluates to `true`).
-
## todo list (in descending order of importance and/or realizability)
- [x] figure out how to recover variable names in pretty-printing so we don't
have to print de bruijn indices all the time
- [x] build a better repl
- [x] improve error messages
-- [ ] implement top-level definitions
+- [x] implement top-level definitions
- [x] implement less aggrevating syntax for non-dependent function & pair types
- [ ] add a type of natural numbers
- [ ] replace type-in-type with a proper (cumulative?) hierarchy of universes