https://github.com/playxe/capy
Scheme implementation (now maybe working properly)
https://github.com/playxe/capy
Last synced: 8 days ago
JSON representation
Scheme implementation (now maybe working properly)
- Host: GitHub
- URL: https://github.com/playxe/capy
- Owner: playXE
- License: bsd-2-clause
- Created: 2023-01-07T07:25:50.000Z (over 2 years ago)
- Default Branch: cps
- Last Pushed: 2023-09-18T12:47:39.000Z (over 1 year ago)
- Last Synced: 2023-09-18T17:28:47.920Z (over 1 year ago)
- Language: Rust
- Size: 2.28 MB
- Stars: 16
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Capy Scheme
Scheme programming language implementation focused on performance.
# Features
- Concurrent GC with small pause times (thanks to [rsgc](https://github.com/playxe/rsgc))
- Module system based on what Gauche Scheme has (`define-module`, `require`, use` etc)
- Fast interpreter with native-like calling convention# Near future TODO
- Baseline JIT with minimal amount of speculation (turning tail-calls into loops, inline caching arithmetic etc)
- Standard library written in Scheme
- call/cc# General TODO
These features might be added at any time, maybe in near future, maybe in very far away future:
- syntax-case macros
- R6RS/R7RS-large compatability
- Optimizing speculative JIT with deoptimization to interpreter in case of speculation failures