Releases: tizoc/shen-scheme
Releases · tizoc/shen-scheme
v0.11
- Add
scm.import-from-module
function to import bindings from Scheme modules into Shen's environment.
v0.10.1
- Fix for print vectors so that no symbol disambiguation is needed.
v0.10
- Update for Shen 17.
- Better handling of paths and current directory.
- Scheme functions are now available with the
scm.
prefix. - Replaced
$native
form withscm.
form that takes a string of Scheme code that will not be processed. - Support for running scripts from the command line without launching a REPL.
- Fixed optimised version of shen.grammar_symbol? (was broken for namespaced symbols)
- Removed overwrites for
macroexpand
andwalk
. - Removed unused
segvar?
overwrite. - Removed internal function registry and support for symbol disambiguation on function application.
- Explicit BSD licence everywhere.
v0.9
- Optimise out unnecessary wrapper lambdas.
- Optimise equality checks.
- Slightly better trap-error and error messages.
- Function overwrites are now handled when precompiling instead of startup.
- Internal code reorganization and simplification.
v0.8
- Works with Shen 16.
- Updated for chibi-scheme 0.7.
- Fixes issue with functions that partially apply themselves.
- Add optimized 'shen.pvar?' overwrite. Makes prolog and typechecking considerably faster.
- Add a fast-path for the common case of trap-error
- Shen sources are precompiled now instead of being compiled on the fly on startup, this provides better startup times.
v0.7
- Works with Shen 15.
v0.6
- Works with Shen 13.
- Update the 'open' procedure.
- Add 'write-byte' procedure.
- Remove 'pr' procedure.
v0.5
- Works with Shen 9
- Support for $native expressions.
v0.4
- Switched to curry-on-demand strategy for partial function applications. This improves performance considerably.
v0.3
- Improved performance and compatibility. Cleanup some dead code. Fixes
- Overrides are now done after loading the file that defines that function. This improves load time and memory usage by using the improved versions when still loading Shen.
- Added new overrides (macroexpand, shen-walk, hash, shen-digit-byte?, shen-byte->digit, symbol?, not, shen-segvar?, shen-grammar_symbol?.
- Better '=' function, with fast-path for references that are 'eq?' and vector compare without converting vectors to lists first.
- Removed safe symbol conversions, with a custom reader they are not needed.
- A much improved method of symbol->function resolution which uses a hash table instead of
eval
. - Fix default fill value for absvectors (was 'fail!' when it should have been 'shen-fail!')
- Inline compares to '(fail)'.