[Ecls-list] More changes

Juan Jose Garcia-Ripoll juanjose.garciaripoll at googlemail.com
Mon Jan 5 10:48:01 UTC 2009

- Important fixes to the user defined encodings.

- UTF-8 decoder rejected some valid byte sequences.

- UCS-2 now accepts surrogate pairs (formerly it was restricted to the
Basic Multilingual Plane of Unicode, 0 ... 0xFFFF)

- New external format options, :BIG-ENDIAN and :LITTLE-ENDIAN,
influence both the character and byte streams. In other words, we are
now able to read byte streams using an endian convention different
from the one of our machine, as in

(with-open-file (in "file.bin" :element-type '(signed-byte 32)
:external-format :big-endian) ...)

- Added aliases to the supported external formats, such as :LATIN1,
:WINDOWS-850, :LATIN-1, :HEBREW, :THAI, etc. The naming is compatible
with flexi-streams'.

- FILE-STRING-LENGTH understands :CRLF encoding even when ECL was
built with --disable-unicode

- Added a new test file, eformat-001.lsp, derived from flexi-stream's
tests, and which tests conversions between several formats. It resides
in the ecl-test source tree. ECL currently passes all tests when built
with --enable-unicode.

In general the previous version I posted was of a very bad quality,
but now everything seems to work at least on the basic level. It still
remains to test the most complex translations, such as Windows
codepage 932, 936, 949, for different Asian encodings.


Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28009 (Spain)

More information about the ecl-devel mailing list