From: Christophe R. <cr...@us...> - 2004-08-26 22:48:16
|
Update of /cvsroot/sbcl/sbcl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16473 Modified Files: Tag: character_branch TODO.character version.lisp-expr Log Message: 0.8.13.77.character.9: "This behaviour is unacceptable" Make the new sbcl (with CHARACTER != BASE-CHAR) build itself ... ensure that alien interfaces coerce (vector character) objects to simple-base-string where necessary; ... decorate the source with a little of the #.(coerce "foo" 'base-string), when a base string is absolutely required; ... make FOREIGN-SYMBOL-ADDRESS require a SIMPLE-BASE-STRING, mostly to help me debug problems. This may well be changed later. ... one or two more filesystem base-string/string fixes. Index: TODO.character =================================================================== RCS file: /cvsroot/sbcl/sbcl/Attic/TODO.character,v retrieving revision 1.1.2.4 retrieving revision 1.1.2.5 diff -u -d -r1.1.2.4 -r1.1.2.5 --- TODO.character 26 Aug 2004 11:01:40 -0000 1.1.2.4 +++ TODO.character 26 Aug 2004 22:47:28 -0000 1.1.2.5 @@ -42,6 +42,14 @@ >> all contribs build and pass self-tests; >> all sbcl tests pass; >> checked against Paul Dietz' gcl/ansi-tests. + >> resulting sbcl self-builds. + (Note: this last step was more difficult than anticipated: the + difference between a self-build and a build from another lisp + is that literal strings are dumped as (SIMPLE-ARRAY CHARACTER + (*))s rather than as SIMPLE-BASE-STRINGs, revealing yet + another set of portability problems, and prompting some KLUDGEs + of the #.(coerce "foo" 'base-string) form that might + eventually be reversed.) -- TODO: sparc, mips, hppa, alpha, ppc. ** fix genesis to dump BASE-STRINGs always, and to use SB!XC:CHAR-CODE @@ -51,6 +59,11 @@ are dumpable as BASE-STRING, which allows for identical cores to be generated from lisps with different BASE-CHAR/CHARACTER distinctions.) +** fix FOREIGN-SYMBOL-ADDRESS to work with general constant strings, +not just (:CONSTANT SIMPLE-BASE-STRING), coercing to base-string +within the VOP implementation. (Rationale: less use of #.(coerce +"foo" 'base-string) throughout the code.) + ** fix the regular dumper to compute similarity properly for strings, rather than simply through an EQUAL hash table. (Rationale: it's just completely broken at present.) @@ -62,7 +75,8 @@ character SBCL, this decision might be revised, but this simplifying decision allows for infrastructural progress). This requires modification of the various CHAR-UPCASE/STRING-DOWNCASE/GRAPHIC-CHAR-P -etc. functions. +etc. functions, and will probably address the failing test FORMAT.C.4A +from gcl/ansi-tests. ** implement :UTF-8, :ISO-8859-1 and :POSIX external formats, and make :DEFAULT an alias for the approprate one based on nl_langinfo(CHARSET) @@ -76,6 +90,11 @@ ** implement an SB-ALIEN:UTF8-STRING parallel to SB-ALIEN:C-STRING. (Rationale: for calling out to Pango or similar.) +** alter the reader and any similar data structures such that they do +not scale linearly in size with the number of characters in the +system. (Rationale: having a readtable with 2^21 entries would make +even current bloated sbcl.core look tiny.) + ** increase CHAR-CODE-LIMIT to something larger than 256. (Rationale: support people other than simply those living in non-Eurozone Western Europe or the United States of America.) This requires at minimum Index: version.lisp-expr =================================================================== RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v retrieving revision 1.1806.2.8 retrieving revision 1.1806.2.9 diff -u -d -r1.1806.2.8 -r1.1806.2.9 --- version.lisp-expr 26 Aug 2004 11:01:41 -0000 1.1806.2.8 +++ version.lisp-expr 26 Aug 2004 22:47:31 -0000 1.1806.2.9 @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.8.13.77.character.8" +"0.8.13.77.character.9" |