diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2023-06-03 07:54:11 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2023-06-03 07:54:11 -0700 |
commit | c3d5c6ae8f29f8a6452ae500fe037fa9aeea0763 (patch) | |
tree | 36e9c70caa8ea715dbbeb97a0af7f6c10b482c45 /RELNOTES | |
parent | 7f6250b71838ffd3ac07d479e7bdb65c351f8fc9 (diff) | |
download | txr-c3d5c6ae8f29f8a6452ae500fe037fa9aeea0763.tar.gz txr-c3d5c6ae8f29f8a6452ae500fe037fa9aeea0763.tar.bz2 txr-c3d5c6ae8f29f8a6452ae500fe037fa9aeea0763.zip |
Version 287.txr-287
* RELNOTES: Updated.
* configure (txr_ver): Bumped version.
* stdlib/ver.tl (lib-version): Bumped.
* txr.1: Bumped version and date.
* txr.vim, tl.vim: Regenerated.
* protsym.c: Regenerated.
Diffstat (limited to 'RELNOTES')
-rw-r--r-- | RELNOTES | 80 |
1 files changed, 80 insertions, 0 deletions
@@ -1,3 +1,83 @@ + TXR 287 + 2023-06-03 + + + Features: + + - Lisp: + - New: progv special operator, similar to Common Lisp's + + - New: compiler-let: binds dynamic variables in the + compiler's context, allowing control over the compiler + at the expression level. + - with-compile-options now implemented using compiler-let. + + - Awk macro: + - redirection operators visible in wider scope + - new :fun clause for binding functions local to macro. + + - Compiler: + - small optimizations: when all local functions in + a labels/flet block are unused, the frame is not + generated for them. + + - Expander: + - Parameter list macros now work in nested lambda lists. + (This is also listed below under Bugs.) + - New expander-let macro for binding special variables + at macro-expansion time. + - Allows customization of macros which occur inside, + by having them respond to the values of the specials. + - Used in TL-WHO port of CL-WHO to fix CL-WHO bugs. + + - Command line: + - The -e option evaluates multiple expressions from + the same argument string. + - They are read together before evaluation, almost + as if they were in the same progn. + + - Listener: + - Evaluates multiple expressions in command line, + instead of complaining about trailing material. + + - Lib: + - load function has new features: + - extra arguments may be passed to load, which are + dynamically bound to a special var called *load-args* + - a loaded file can bail early using using + (return-from load) or (return-from load <value>) + - the interrupted load function will then return that + value to its caller. + - thus loaded files can behave like functions with + arguments and return values. + + Bugs + + - Android: fixes for running on Android 13 via Termux. + + - Environments: + - Fixed crash when certain built in variables are removed + with makunbound. + - Fixed (symbol-value ...) wrongly storing a value to the + top-level binding rather than the current dynamic binding. + - Fixed bug in the VM: getlx and setlx instructions + using dynamic lookup rather than global. + + - Expander: + - Fixed bug in empty case of flets/labels causing + unrelated symbol macros to be strangely affected. + - Parameter list macros now work in nested lambda lists. + + - Awk macro: fixed completely broken redirection operators. + + - Parser: + - There is now a proper handler for fatal Flex errors, like + when a token is ridiculously long. + - Flex-generated default handler prints something and exits. + - Our handler throws exception. + + + TXR 286 2023-05-07 |