Skip to content

Releases: tizoc/shen-scheme

v0.11

20 Feb 17:10
Compare
Choose a tag to compare
  • Add scm.import-from-module function to import bindings from Scheme modules into Shen's environment.

v0.10.1

13 Feb 19:57
Compare
Choose a tag to compare
  • Fix for print vectors so that no symbol disambiguation is needed.

v0.10

13 Feb 16:30
Compare
Choose a tag to compare
  • Update for Shen 17.
  • Better handling of paths and current directory.
  • Scheme functions are now available with the scm. prefix.
  • Replaced $native form with scm. 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 and walk.
  • Removed unused segvar? overwrite.
  • Removed internal function registry and support for symbol disambiguation on function application.
  • Explicit BSD licence everywhere.

v0.9

22 Dec 11:40
Compare
Choose a tag to compare
  • 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

15 Dec 13:16
Compare
Choose a tag to compare
  • 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

15 Dec 13:18
Compare
Choose a tag to compare
  • Works with Shen 15.

v0.6

15 Dec 13:19
Compare
Choose a tag to compare
  • Works with Shen 13.
  • Update the 'open' procedure.
  • Add 'write-byte' procedure.
  • Remove 'pr' procedure.

v0.5

15 Dec 13:19
Compare
Choose a tag to compare
  • Works with Shen 9
  • Support for $native expressions.

v0.4

15 Dec 13:20
Compare
Choose a tag to compare
  • Switched to curry-on-demand strategy for partial function applications. This improves performance considerably.

v0.3

15 Dec 13:21
Compare
Choose a tag to compare
  • 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)'.