summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog12
-rw-r--r--RELNOTES44
-rwxr-xr-xconfigure2
-rw-r--r--txr.118
-rw-r--r--txr.c2
5 files changed, 68 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index d35d12ea..0295a4a1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,17 @@
2012-02-05 Kaz Kylheku <kaz@kylheku.com>
+ Version 56
+
+ * txr.c (version): Bumped.
+
+ * txr.1: Bumped version and set date.
+
+ * configure (txr_ver): Bumped.
+
+ * RELNOTES: Updated.
+
+2012-02-05 Kaz Kylheku <kaz@kylheku.com>
+
* parser.l: Allow semicolon terminator on hex and octal
escapes in a regex. Removed o escape character from octal
constants in strings and quasiliterals: no such thing is documented.
diff --git a/RELNOTES b/RELNOTES
index 35cb28c1..909f6d56 100644
--- a/RELNOTES
+++ b/RELNOTES
@@ -1,3 +1,47 @@
+ TXR 56
+ 2011-02-06
+
+
+ Features
+
+ - Hex and octal escapes work in strings and quasilterals now: the
+ documentation has stopped lying.
+ - Escapes can be followed by a semicolon which terminates them and is
+ removed, which is useful if an escape is followed by characters
+ that would otherwise be interpreted as part of the escape.
+
+ - More color categories and more accurate syntax in Vim syntax
+ highlighting file. Highlights @[...] syntax properly inside quasiquote.
+
+ - The third argument (the default value if a key is not found) can be omitted
+ when indexing hashes with the [hash key] syntax. It defaults to nil.
+
+ - The dwim operator (and thus [] syntax) is even more Lisp-1 like. It
+ now has Lisp-1 namespace semantics for evaluating arguments
+ that are symbols.
+
+ - A new operator called "op" as been added. This allows simple lambda
+ functions to be written as partial evaluatios of functions, with implicit
+ arguments as well as numbered/rest arguments appearing in the body.
+
+
+ Bugs
+
+ - Fixed missing type check in hash module that allows bad code
+ to crash interpreter instead of getting an excepion.
+
+ - Fixed regression in TXR 55 which broke computed field widths in output
+ variables.
+
+ - Fixed incorrect UTF-8 decoding of some code points.
+
+ - Closed several security holes in UTF-8 decoder by recognizing all invalid
+ UTF-8 sequences, and mapping invalid bytes in such a way that any byte
+ sequence processed by the decoder into Unicode code points will be
+ recovered exactly when encoded back into UTF-8.
+
+
+
TXR 55
2011-01-26
diff --git a/configure b/configure
index 86746f95..54956613 100755
--- a/configure
+++ b/configure
@@ -357,7 +357,7 @@ fi
#
-txr_ver=55
+txr_ver=56
#
# The all important banner.
diff --git a/txr.1 b/txr.1
index 2bfc73b8..73c763d7 100644
--- a/txr.1
+++ b/txr.1
@@ -21,16 +21,18 @@
.\"IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
.\"WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-.TH "TXR" 1 2012-01-26 "Utility Commands" "Txr Text Extractor" "Kaz Kylheku"
+.TH "TXR" 1 2012-02-05 "Utility Commands" "Txr Text Processing Language" "Kaz Kylheku"
.SH NAME
-txr \- text extractor (version 55)
+txr \- text processing language (version 56)
.SH SYNOPSIS
.B txr [ options ] query-file { data-file }*
.sp
.SH DESCRIPTION
.B TXR
-is a language oriented toward extracting text from files or streams
-using multi-line, recursive pattern matching. A
+is a language oriented toward processing text from files or streams, using
+multiple programming paradigms.
+
+A
.B TXR
script is called a query, and it specifies a pattern which matches (a prefix
of) an entire file, or multiple files. Patterns can consists of large
@@ -58,10 +60,10 @@ file for the place where an entire sub-query matches, for collecting lists, and
for combining sub-queries using logical conjunction, disjunction and negation,
and numerous others.
-Furthermore, embedded within TXR is a powerful Lisp dialect, described in the
-section TXR LISP far below. TXR Lisp supports functional and imperative
-programming, and provides data types such as symbols, strings, vectors, hash
-tables with weak reference support, and arbitrary-precision (bignum integers).
+Furthermore, embedded within TXR is a powerful Lisp dialect. TXR Lisp supports
+functional and imperative programming, and provides data types such as symbols,
+strings, vectors, hash tables with weak reference support, lazy lists, and
+arbitrary-precision (bignum integers).
.SH ARGUMENTS AND OPTIONS
diff --git a/txr.c b/txr.c
index 48755c32..fec9fa4a 100644
--- a/txr.c
+++ b/txr.c
@@ -43,7 +43,7 @@
#include "debug.h"
#include "txr.h"
-const wchli_t *version = wli("55");
+const wchli_t *version = wli("56");
const wchar_t *progname = L"txr";
const wchar_t *spec_file = L"stdin";
val spec_file_str;