Skip to content

Commit caa11e7

Browse files
committed
Update documentation.
1 parent 5682c03 commit caa11e7

File tree

2 files changed

+19
-9
lines changed

2 files changed

+19
-9
lines changed

README.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,9 @@ _LispKit_ provides support for the following core features, many of which are ba
4949
`(scheme eval)`, `(scheme file)`, `(scheme inexact)`, `(scheme lazy)`, `(scheme load)`,
5050
`(scheme process-context)`, `(scheme read)`, `(scheme repl)`, `(scheme time)`, `(scheme write)`,
5151
`(scheme r5rs)`
52-
- LispKit-specific libraries: `(lispkit datatype)`, `(lispkit object)`, `(lispkit enum)`,
53-
`(lispkit iteration)`, `(lispkit set)`, `(lispkit stack)`, `(lispkit queue)`, `(lispkit heap)`,
54-
`(lispkit wt-tree)`, `(lispkit prettify)`, `(lispkit json)`,
52+
- LispKit-specific libraries: `(lispkit test)`, `(lispkit datatype)`, `(lispkit object)`, `(lispkit enum)`,
53+
`(lispkit logic)`, `(lispkit iteration)`, `(lispkit set)`, `(lispkit stack)`, `(lispkit queue)`,
54+
`(lispkit heap)`, `(lispkit wt-tree)`, `(lispkit prettify)`, `(lispkit json)`,
5555
and `(lispkit pdf)`
5656

5757
_LispKit_ is incompatible or incomplete with respect to the following R7RS features:
@@ -86,7 +86,10 @@ framework:
8686
- [SRFI 133: Vector Library](https://srfi.schemers.org/srfi-133/srfi-133.html)
8787
- [SRFI 134: Immutable Deques](https://srfi.schemers.org/srfi-134/srfi-134.html)
8888
- [SRFI 135: Immutable Texts](https://srfi.schemers.org/srfi-135/srfi-135.html)
89+
- [SRFI 137: Minimal Unique Types](https://srfi.schemers.org/srfi-137/srfi-137.html)]
8990
- [SRFI 142: Bitwise Operations](https://srfi.schemers.org/srfi-142/srfi-142.html)
91+
- [SRFI 145: Assumptions](https://srfi.schemers.org/srfi-145/srfi-145.html)
92+
- [SRFI 151: Bitwise Operations](https://srfi.schemers.org/srfi-151/srfi-151.html)
9093
- [SRFI 152: String Library](https://srfi.schemers.org/srfi-152/srfi-152.html)
9194
- [SRFI 158: Generators and Accumulators](https://srfi.schemers.org/srfi-158/srfi-158.html)
9295

TODO.md

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,37 @@
11
# Todo
22

3-
Last update: 2017-11-19
3+
Last update: 2018-03-11
44

55

66
## Compiler
77

8+
- [ ] Manage source locations in compiler and generated code and include source locations in error messages
9+
- [ ] Optimize letrec; only use variables if bindings are mutable or if there is a forward reference.
10+
- [ ] Figure out that references to `define`, `define-values`, `unquote`, etc. are referring to the right
11+
syntax/definitions; right now, there are checks only for the definition to happen at the top-level in an
12+
immutable fashion
13+
- [ ] Treat define-values like define in compiler (wrt. internal definitions)
14+
- [ ] `#;` comments (datum comments) not correctly working
815
- [X] Optimization/checkpointing framework
916
- [X] Use values instead of variables for all immutable bindings (do this by compiling
1017
forms with bindings twice, if the first run shows that a binding is mutable)
11-
- [ ] Optimize letrec; only use variables if bindings are mutable or if there is a forward
12-
reference.
1318
- [X] Support (define ...) in control flow special forms
1419
- [X] Refactor creation of compiler; checkpointer needs to be always passed explicitly
1520
- [X] Support compiled system functions
1621
- [X] Support tail patterns in `syntax-rules`
17-
- [X] Within library definitions, support: `include`, `include-ci`,
18-
`include-library-declarations`, `cond-expand`
22+
- [X] Within library definitions, support: `include`, `include-ci`, `include-library-declarations`, `cond-expand`
1923
- [X] Support `define-values`
2024
- [X] Support `cond-expand`
2125
- [X] Support `include-ci`
2226
- [X] Support features mechanism
2327
- [X] Fix bug preventing to nest definitions three or more times
2428

29+
2530
## Runtime
2631

2732
- [ ] Go through procedures that call back into the VM to check that all expressions are
2833
tracked by the managed object pool
29-
- [ ] Redesign error data model
34+
- [X] Redesign error data model
3035
- [ ] Profile virtual machine
3136
- [X] Implement new primitive procedure type that returns closures for execution instead
3237
of results
@@ -39,6 +44,8 @@ Last update: 2017-11-19
3944

4045
## Library
4146

47+
- [ ] Reimplement records: to improve performance, to use make-type, to make them extensible
48+
- [ ] Record type checks when record accessors are called
4249
- [X] Implement text + binary ports based on the R7RS standard
4350
- [X] Implement bytevector library based on the R7RS standard
4451
- [X] Implement hash table library based on the R6RS standard

0 commit comments

Comments
 (0)