Skip to content

Releases: tizoc/shen-scheme

v0.25

06 Mar 19:00
Compare
Choose a tag to compare

Changed

  • Updated for new S-series kernel (version S31)

v0.25-rc1

06 Mar 16:01
532d6ec
Compare
Choose a tag to compare
v0.25-rc1 Pre-release
Pre-release

Pre-release

v0.24

07 Mar 19:03
Compare
Choose a tag to compare

Changed

  • Updated for Shen 22.4.

v0.23

13 Dec 20:33
Compare
Choose a tag to compare

Added

  • Enabled programmable-pattern-matching extension.
  • Non-string version of special scm. form.

Changed

  • Updated for Shen 22.3.
  • Updated Chez dependency to 9.5.4.
  • if branches with a known test result are optimized away.
  • Faster equality check against literal numbers.
  • Faster globals.
  • Various other optimizations.

v0.22

01 Oct 13:53
Compare
Choose a tag to compare
  • Updated for Shen 22.1
  • Replace factorisation implementation with extension from kernel.

v0.21

26 Sep 14:17
Compare
Choose a tag to compare
  • Updated for Shen 22.0.
  • Arguments to the shen-scheme binary have changed, and the launcher extension provided by the latest Shen kernel release is used, pass the --help argument to the executable to see the new format.
  • Integrated new features extension provided by the latest Shen kernel release.

v0.20

23 Sep 19:37
Compare
Choose a tag to compare
  • Added flag to allow disabling of pattern factorization.
  • Improve pattern factorization by only hoisting labels that get jumped to from more than one place.
  • Improve pattern factorization by generating fewer ifs in cases where the conditions can be merged into a single if + and.
  • Compile chains of cons calls that result in a properly formed list into a single list call.
  • Multiple aesthetic changes to the Scheme code the compiler generates.

v0.19

22 Sep 20:12
Compare
Choose a tag to compare
  • Updated for Shen 21.2.
  • Implemented pattern matching optimization. Speedup goes from modest in simple patterns to huge in patterns that deconstruct larger structures.
  • Added missing *release* variable.
  • Functions generated by compiling defun expressions are not wrapped in begin expressions anymore.

v0.18

02 Sep 17:12
Compare
Choose a tag to compare
  • Updated for Shen 21.1.
  • Updated Chez dependency from 9.5 to 9.5.2.
  • Don't flush ports after calling write-byte unless the port is stdout or stderr.
  • Override pr with a better performing implementation.
  • Override vector constructor with better performing implementation.
  • Override @p tuple constructor with better performing implementation.
  • Make sysfunc? return true for scm. prefixed symbols.
  • Add shen-scheme.find-library function that returns a path where libraries can be added.
  • Remove "whoami" dependency.
  • Fix compilation of let. Was not working correctly in where the variable name showed up on the right-side.
  • Add support for Scheme's letrec through the scm.letrec form.
  • Compile (thaw ...) expressions to direct function calls.
  • Use path relative to shen-scheme executable as home.

v0.17

17 Feb 18:25
Compare
Choose a tag to compare
  • Updated for Shen 21.
  • Reduce overhead of trap-error in most situations.
  • Return numbers when calling intern with numeric strings.
  • Optimise calls to (intern "StringConstant").
  • Add support for (scm. "(literal scheme code)") forms.
  • Add --eval <expression> command-line option.
  • Fix dicts not working properly with some key value types.
  • Fix symbol? override so that it behaves like the Shen Kernel version.