summaryrefslogtreecommitdiffstats
path: root/RELNOTES
diff options
context:
space:
mode:
Diffstat (limited to 'RELNOTES')
-rw-r--r--RELNOTES53
1 files changed, 53 insertions, 0 deletions
diff --git a/RELNOTES b/RELNOTES
index f36f774a..e3fcea20 100644
--- a/RELNOTES
+++ b/RELNOTES
@@ -1,3 +1,56 @@
+ TXR 299
+ 2025-02-16
+
+
+ Features
+
+ - Lib:
+ - New defenum macro for defining enumerated constants, which
+ get implemented as symbol macros.
+
+ - Data Interchange:
+ - New CSV support: get-csv, put-csv, tocsv.
+ - Follows RFC 4180 as much as it makes sense to.
+
+ - Awk:
+ - code generation improved:
+ - field separation handled by a lambda that is configured
+ whenever field separation is set up, such that it doesn't
+ have to switch at record parse time (Strategy or State Pattern).
+ - CSV support: fs variable (field separator) can be set to :csv.
+
+ - Performance:
+ - improvements in read-until-match and related functions.
+
+ - VM:
+ - several variants of the IF instruction now check for signal
+ when doing a backward branch, like JMP does.
+ - I discovered that some looping code was not interruptible
+ by Ctrl-C.
+ - Root cause was that backward JMP was optimized to an
+ backwards-branching IF instruction.
+
+ - op:
+ - lop: behavior change in lop and related left-inserting
+ partial application operators: the arguments are no longer
+ inserted when argument variables @1, @2, ... or @rest are present.
+ - lopip, lflow: more efficient expansion.
+ - we know that pipe line elements receive only one argument and so
+ we can eliminate the use of apply and lambda.
+ - New macro lop1.
+
+ Bugs
+
+ - Bug in match-case macro.
+ - json: incorrect defaulting of flat-p argument in put-json.
+ - FFI:
+ - broken return value handing for int8 and uint8.
+ - broken be-int16 closure return value.
+ - rewrote return value handing for endian types to read/write
+ the memory as a ffi_arg and just do conversions and swaps.
+
+
+
TXR 298
2024-12-17