[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: two bugs in reference implementation of SRFI 13
Date: Sat, 24 Dec 2011 20:48:10 +0100
From: Jamison Hope <jrh@xxxxxxxxxxxxxxx>
string-parse-start+end is documented to return three values:
"rest start end", but in make-kmp-restart-vector its result is bound
to two variables (start end). I found the same issue in
string-kmp-partial-search, which also attempts to capture only the
"start" and "end" values.
The fix in both places is to call string-parse-final-start+end instead,
which strips off the first unwanted rest value from string-parse-start
Not quite. The fix is to identify and use the intended definition of
the name LET-OPTIONALS*. With Olin's definition of LET-OPTIONALS*,
such as you will find in scsh, or reimplemented with SYNTAX-RULES in
more recent Scheme48, the use of STRING-PARSE-START+END is correct.
It seems (a) he forgot to say what definition to use in the reference
implementation, and (b) the authors of Kawa chose a different one.