R7RS Compliance
This is the status of Scheme programming language features implemented from the R7RS Scheme Specification:
Section | Status | Comments |
---|---|---|
2.2 Whitespace and comments | Yes | |
2.3 Other notations | Yes | |
2.4 Datum labels | No | |
3.1 Variables, syntactic keywords, and regions | Yes | |
3.2 Disjointness of types | Yes | |
3.3 External representations | Yes | |
3.4 Storage model | Yes | |
3.5 Proper tail recursion | Yes | |
4.1 Primitive expression types | Yes | |
4.2 Derived expression types | Yes | |
4.2.1 Conditionals | Yes | |
4.2.2 Binding constructs | Yes | |
4.2.3 Sequencing | Yes | |
4.2.4 Iteration | Yes | |
4.2.5 Delayed evaluation | Yes | |
4.2.6 Dynamic bindings | Yes | |
4.2.7 Exception handling | Yes | |
4.2.8 Quasiquotation | Yes | |
4.2.9 Case-lambda | Yes | |
4.3 Macros | Yes | Support for syntax-rules and a lower-level explicit renaming macro system. |
5.1 Programs | Yes | |
5.2 Import declarations | Yes | |
5.3 Variable definitions | Yes | |
5.4 Syntax definitions | Yes | |
5.5 Record-type definitions | Yes | |
5.6 Libraries | Yes | |
5.7 The REPL | Yes | |
6.1 Equivalence predicates | Yes | |
6.2 Numbers | Partial | Integers (fixnums and bignums), reals, and complex numbers are supported. |
6.3 Booleans | Yes | |
6.4 Pairs and lists | Yes | |
6.5 Symbols | Yes | |
6.6 Characters | Yes | |
6.7 Strings | Yes | |
6.8 Vectors | Yes | |
6.9 Bytevectors | Yes | |
6.10 Control features | Yes | dynamic-wind is limited, and does not work across calls to continuations. |
6.11 Exceptions | Yes | |
6.12 Environments and evaluation | Partial | Only eval is implemented at this time. |
6.13 Input and output | Partial | Functions do not differentiate between binary and textual ports. |
6.14 System interface | Yes |