My first querstion is if the CHAR-UPCASE.2 and CHAR-DOWNCASE.2. tests in ANSI-TEST are in need of repair?<br>If so, is there a proposal how to fix them?<br><br>Many Lisps pass them.. Some do not .. When a lisp starts failing them when it passed them before it is useful information.<br>
<br>I think many lisp implementations rely on running these tests to spot regressions.<br><br>So whatever you do please either fix the test or fix the implementation that had the regression.<br><br><br><div class="gmail_quote">
On Sat, Apr 3, 2010 at 4:00 PM, Erik Huelsmann <span dir="ltr"><<a href="mailto:ehuels@gmail.com">ehuels@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Ever since ABCL raised its CHAR-CODE-LIMIT from 256 to #x10000, 2<br>
tests started failing: char-upcase.1 and char-upcase.2.<br>
<br>
These 2 tests iterate through all integers between 0 and<br>
CHAR-CODE-LIMIT. While doing so, they test for the property that<br>
upcasing and downcasing returns the same character again<br>
("round-tripping"). This property of characters is specified in<br>
section 13.1.4.3<br>
(<a href="http://www.lispworks.com/documentation/lw51/CLHS/Body/13_adc.htm" target="_blank">http://www.lispworks.com/documentation/lw51/CLHS/Body/13_adc.htm</a>)<br>
"Characters with case". In short: characters with case are defined in<br>
pairs; additional characters with case have to be defined in pairs<br>
too.<br>
<br>
The spec provides char-upcase and char-downcase to convert<br>
characters-with-case to their 'other-case equivalent'.<br>
<br>
However, in section 13.1.10, there seems to be an escape hatch:<br>
"Documentation of implementation-defined scripts". A script is a<br>
subtype of CHARACTER, nothing more nothing less. An<br>
implementation-defined script gets to document the effect on<br>
CHAR-UPCASE and CHAR-DOWNCASE.<br>
<br>
Now, if I were to define our Unicode script to be every character<br>
except those in the base set, char-upcase and char-downcase may have<br>
different semantics, except for the standard characters. That way,<br>
there's no need to have the round-tripping requirement apply to most<br>
of unicode - as can't be expected, see latin-small-letter-dotless-i<br>
for an example.<br>
<br>
In the light above, is it really portable for the tests to assume all<br>
characters must be round-tripped? I think it's not.<br>
<br>
What are your opinions?<br>
<br>
Bye,<br>
<br>
Erik.<br>
<br>
_______________________________________________<br>
armedbear-devel mailing list<br>
<a href="mailto:armedbear-devel@common-lisp.net">armedbear-devel@common-lisp.net</a><br>
<a href="http://common-lisp.net/cgi-bin/mailman/listinfo/armedbear-devel" target="_blank">http://common-lisp.net/cgi-bin/mailman/listinfo/armedbear-devel</a><br>
</blockquote></div><br>