Releases: Shen-Language/shen-cl
Releases · Shen-Language/shen-cl
v3.0.3
v3.0.2
Changed
- Overrides for
symbol?andvariable?. This speeds up the time it takes forevalto compile expressions considerably.
v3.0.1
Changed
@pandvectorconstructors are now overriden by better performing native implementations.read-file-as-bytelist,shen.read-file-as-charlistandshen.read-file-as-charlistare also overriden by native implementations.
v3.0.0
Updated to Shen Open Source Kernel 22.2
Changed
- New compiler imported from Shen/Scheme. Generates code that performs better and allocates less memory.
- Common Lisp's read-table case rules are not modified anymore.
- Bootstraping from scratch requires a working Shen implementation to precompile the compiler code and kernel.
v2.7.0
Updated to Shen Open Source Kernel 22.1
Changed
- Reintroduced backend written in Shen.
- Moved everything in the compiler from the
shennamespace toshen-cl. - Command-line handling has been replaced by the "launcher" kernel extension.
doexpressions now get compiled intoPROGNexpression, making them tail-call optimization friendly.
Added
- Integrated "features" kernel extension.
- Integrated "launcher" kernel extension.
- Integrated "factorise-defun" kernel extension optimization.
- Source release which includes a pre-compiled
backend.lspfile. shen-cl.lisp-true?to convert from CL to Shen booleans (counterpart toshen-cl.true?).
v2.6.1
Updated to Shen Open Source Kernel 21.2
Changed
*port*is now a string with amajor.minor.patchformat.- Errors raised when evaluating
--loadand--evalarguments now print error and exit with code 1.
v2.6.0
Added
-s/--setsets global symbols, removing use case for*argv*.- Automated binary builds for Linux, Windows and OSX through Travis.
Changed
*argv*has been removed.-rgets run in left-to-right order like other options.-v,-hdon't exit immediately after.- Unrecognized options cause exit with code
-1instead of getting skipped. - REPL only starts by default if no command line options specified.
- Amended
shen.creditsto explain exit command. - Improved help (
-h) message.
v2.5.0
Added
shen-cl.load-lisp,shen-cl.eval-lispthat load and evals Lisp code in string form from Shen.LOAD-SHENthat loads Shen code from Lisp.:SHENpackage where Shen code is defined by default.-r/--reploption to force running REPL even if other options would prevent REPL from running.cl.exit(cf.shen-cl.exit) as it is CL-specific function and not shen-cl-specific function.
Changed
absvector?no longer returnstruefor strings.CF-VECTORScan now compare empty absvectors.- Shen code now gets defined in
:SHENpackage instead of:COMMON-LISPpackage. - Makefile uses
curlinstead ofwgeton macOS.
v2.4.0
Updated to Shen Open Source Kernel 21.1.
v2.3.0
Updated to Shen Open Source Kernel 21.0.
Added
make releasecommand that creates os-specific archive of compiled binaries.dict.klto list of KL imports.lisp.form to embed literal Common Lisp code.
Changed
condnow raises an error when no condition is true, instead of returning[].- Reimplemented
lisp.prefixed native calls in the compiler.
Renamed
exit->shen-cl.exit.read-char-code->shen.read-char-code
Removed
command-line- use(value *argv*)instead.