Update readme

This commit is contained in:
retropikzel 2024-09-22 16:54:59 +03:00
parent 7f996ab03c
commit 6aaf49e450
1 changed files with 28 additions and 24 deletions

View File

@ -17,15 +17,13 @@ or run mkdocs serve or see or docs/ directory.
# Goals # Goals
- Support only R7RS implementations - Support only R7RS implementations (for now)
- Needs to have cond-expand and library support atleast (propably much more)
- Same interface on all implementations - Same interface on all implementations
- Some things that are procedures on one implementation are macros on other, - Some things that are procedures on one implementation are macros on other,
but they must behave the same but they must behave the same
# Non goals # Non goals
- To support all R7RS implementations
- To have every possible FFI feature - To have every possible FFI feature
- Compiling of C code at any point - Compiling of C code at any point
- That is no stubs, no C code generated by the library and so on - That is no stubs, no C code generated by the library and so on
@ -39,6 +37,8 @@ that each implementation passes those tests. This will be done in tiered order s
## Tier 1 ## Tier 1
Aiming to support these first
- [Chicken](https://www.call-cc.org/) - [Chicken](https://www.call-cc.org/)
- [Guile](https://www.gnu.org/software/guile/) - [Guile](https://www.gnu.org/software/guile/)
- [Kawa](https://www.gnu.org/software/kawa/index.html) - [Kawa](https://www.gnu.org/software/kawa/index.html)
@ -51,26 +51,27 @@ that each implementation passes those tests. This will be done in tiered order s
- [Sagittarius](https://bitbucket.org/ktakashi/sagittarius-scheme/wiki/Home) - [Sagittarius](https://bitbucket.org/ktakashi/sagittarius-scheme/wiki/Home)
- [Racket](https://racket-lang.org/) - [Racket](https://racket-lang.org/)
## Tier 2 - Work in progress ## Tier 2
Work in progress
- [Gambit](https://gambitscheme.org) - [Gambit](https://gambitscheme.org)
- Propably able to support everything but so annoying to deal with that it's currently in tier 2 - Propably able to support everything but so annoying to deal with that it's currently in tier 2
- Still needs work
- [STKlos](https://stklos.net/) - [STKlos](https://stklos.net/)
- No callback support - No callback support
- Still needs work
- [Cyclone](https://justinethier.github.io/cyclone/) - [Cyclone](https://justinethier.github.io/cyclone/)
- No callback support - No callback support
- Still needs work
## Tier 3 ## Tier 3
In queue
- [LIPS](https://lips.js.org/) - [LIPS](https://lips.js.org/)
- Waiting for implementation to have cond-expand and library support - Will work on nodejs by using some Javascript FFI
- Will only work on nodejs - Javascript side needs design
- [Biwascheme](https://www.biwascheme.org/) - [Biwascheme](https://www.biwascheme.org/)
- Waiting for implementation to have cond-expand and library support - Will work on nodejs by using some Javascript FFI
- Will only work on nodejs - Javascript side needs design
## Tier 4 ## Tier 4
@ -81,19 +82,11 @@ Support needs to be investigated.
- [Larceny](https://larcenists.org/) - [Larceny](https://larcenists.org/)
- [Mosh](https://mosh.monaos.org) - [Mosh](https://mosh.monaos.org)
- [Skint](https://github.com/false-schemers/skint) - [Skint](https://github.com/false-schemers/skint)
- [s7](https://scheme.fail://ccrma.stanford.edu/software/snd/snd/s7.html)
## Tier 5 ## Tier 5
Support maybe possible/dreaming about. Support needs investigation and serious design or making dynamic FFI for the implementation
- [Airship](https://gitlab.com/mbabich/airship-scheme)
- [Other gambit targets](https://gambitscheme.org/)
- Gambit compiles to different targets other than C too, for example Javascript. It would be cool
and interesting to see if this FFI could also support some of those
## Tier 6
Not supported currently, and may never be.
- [Chibi](https://synthcode.com/scheme/chibi) - [Chibi](https://synthcode.com/scheme/chibi)
- FFI requires C code - FFI requires C code
@ -103,8 +96,19 @@ Not supported currently, and may never be.
- FFI requires C code - FFI requires C code
- [Gauche](https://practical-scheme.net/gauche/) - [Gauche](https://practical-scheme.net/gauche/)
- FFI requires C code - FFI requires C code
- [s7](https://scheme.fail://ccrma.stanford.edu/software/snd/snd/s7.html)
- No library support ## Tier 6
- Might have other things missing too
Support maybe possible/dreaming about.
- [Airship](https://gitlab.com/mbabich/airship-scheme)
- [Other gambit targets](https://gambitscheme.org/)
- Gambit compiles to different targets other than C too, for example Javascript. It would be cool
and interesting to see if this FFI could also support some of those
## Tier 7
Other
- [Loko](https://scheme.fail/) - [Loko](https://scheme.fail/)
- Desires no C interop, I can respect that - Desires no C interop, I can respect that