AtlatestRepositorysigil-r7rs
1# sigil-r7rs
2
3R7RS-small compatibility library for [Sigil](https://codeberg.org/sigil/sigil).
4
5This package provides the standard `(scheme *)` module paths defined by [R7RS-small](https://small.r7rs.org/), allowing programs written against the R7RS standard library to run on Sigil without modification.
6
7## Modules
8
9| Module | R7RS Section |
10|--------|-------------|
11| `(scheme base)` | Core library: arithmetic, lists, strings, I/O, control flow |
12| `(scheme case-lambda)` | Case-lambda dispatch |
13| `(scheme char)` | Character predicates and case conversion |
14| `(scheme cxr)` | Compositions of `car` and `cdr` |
15| `(scheme eval)` | `eval` and `environment` |
16| `(scheme file)` | File I/O |
17| `(scheme inexact)` | Inexact arithmetic (`sin`, `cos`, `sqrt`, etc.) |
18| `(scheme lazy)` | `delay`, `force`, `make-promise` |
19| `(scheme load)` | `load` |
20| `(scheme process-context)` | `command-line`, `exit`, environment variables |
21| `(scheme read)` | `read` |
22| `(scheme repl)` | `interaction-environment` |
23| `(scheme time)` | `current-second`, `current-jiffy` |
24| `(scheme write)` | `display`, `write`, `write-shared` |
26## Usage
28Add as a dependency in your `package.sgl`:
30```scheme
31(define sigil-repo "codeberg:sigil/sigil")
33(package
34 ...
35 dependencies: (list
36 (from-git url: "codeberg:sigil/sigil-r7rs")))
37```
39Then import standard Scheme modules:
41```scheme
42(import (scheme base)
43 (scheme write))
45(display "Hello from R7RS!")
46(newline)
47```
49## Building
51```
52sigil deps install
53sigil build
54sigil test
55```
57## License
59BSD-3-Clause