Skip to content

Commit ce6172c

Browse files
committed
update readme
1 parent 93e5cc8 commit ce6172c

File tree

1 file changed

+16
-21
lines changed

1 file changed

+16
-21
lines changed

README.md

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -18,39 +18,34 @@ make -f CoqMakefile
1818
cabal run agda2lambox -- --out-dir build -itest test/Nat.agda
1919
```
2020

21+
## Implemented
22+
23+
- Compilation to untyped λ□ programs:
24+
- Mutually-defined datatypes and record types.
25+
- Mutually-defined functions.
26+
- Importing modules.
27+
The backend transitively compiles all required definitions, and only those.
28+
- Nat literals.
29+
2130
## TODO
2231

23-
- [x] Fix generation of Coq code
24-
- [x] Add Coq pretty-printing
25-
- [x] Support mutual definitions
26-
- [x] Support one-inductive
27-
- [x] Add pragma for program selection
28-
- [x] Make pretty-printer prettier
29-
- [x] Ensure well-formedness of generated programs inside Coq
30-
- [x] Make well-formedness check faster by splitting it into boolean and propositional
31-
- [x] Evaluate λ□ programs from inside Coq to start testing
32-
- [x] Using the λ□-Mut from CertiCoq
33-
- [x] Support mutual inductives
34-
- [x] Refactor backend
35-
- Get rid of the Convert class.
36-
- Possibly put everything in a single module
37-
- Unify compilation of records and datatypes
38-
- [x] Support (one-inductive) records
39-
- [x] Properly translate projections in terms (by actually generating projections)
40-
- [x] Support mutual (possibly inductive) records
41-
- [x] Traverse multiple files to get all (required) definitions
42-
- [ ] Support (nat) literals
4332
- [ ] Better error-reporting
4433
- [ ] Check support for Agda-specific edge cases
4534
- [x] Pattern-matching lambdas
4635
- [x] With-generated lambdas
4736
- [ ] Module applications
4837
- [ ] Projection-like
4938
- [ ] Support primitives (ints and floats)
39+
5040
- [ ] Setup compilation to Wasm/Rust using Certicoq
51-
- [ ] May require generating λ□ terms for an older MetaCoq
5241
- [ ] Setup proper testing infrastructure
5342

43+
## Icebox
44+
45+
Things that ought to be implemented, but not right now.
46+
47+
- [ ] Caching of compiled modules.
48+
5449
## References
5550

5651
- [The MetaCoq Project](https://github.com/MetaCoq/metacoq)

0 commit comments

Comments
 (0)