update NEWS

* NEWS: Minor text revisions, and fold new NEWS entries into the main
  body too.
This commit is contained in:
Andy Wingo 2009-09-06 12:58:31 +02:00
commit 99e31c327e

101
NEWS
View file

@ -10,41 +10,43 @@ prerelease, and a full NEWS corresponding to 1.8 -> 2.0.)
Changes in 1.9.3 (since the 1.9.2 prerelease):
** Non-ASCII source code files can be read, but require coding
declarations
** Support for non-ASCII source code files
The default reader now handles source code files for some of the
non-ASCII character encodings, such as UTF-8. A non-ASCII source file
should have an encoding declaration near the top of the file. Also,
there is a new function file-encoding that scans a port for a coding
declaration.
non-ASCII character encodings, such as UTF-8. A non-ASCII source file
should have an encoding declaration near the top of the file. Also,
there is a new function, `file-encoding', that scans a port for a coding
declaration. See the section of the manual entitled, "Character Encoding
of Source Files".
The pre-1.9.3 reader handled 8-bit clean but otherwise unspecified source
code. This use is now discouraged.
** Ports do transcoding
** Support for locale transcoding when reading from and writing to ports
Ports now have an associated character encoding, and port read/write
operations do conversion to/from locales automatically. Ports also
Ports now have an associated character encoding, and port read and write
operations do conversion to and from locales automatically. Ports also
have an associated strategy for how to deal with locale conversion
failures. Four functions to support this: set-port-encoding!,
port-encoding, set-port-conversion-strategy!,
port-conversion-strategy.
failures.
See the documentation in the manual for the four new support functions,
`set-port-encoding!', `port-encoding', `set-port-conversion-strategy!',
and `port-conversion-strategy'.
** String and SRFI-13 functions can operate on Unicode strings
** SRFI-14 char-sets are modified for Unicode
** Unicode support for SRFI-14 character sets
The default char-sets are not longer locale dependent and contain
characters from the whole Unicode range. There is a new char-set,
char-set:designated, which contains all assigned Unicode characters.
There is a new debugging function: %char-set-dump.
The default character sets are no longer locale dependent and contain
characters from the whole Unicode range. There is a new predefined
character set, `char-set:designated', which contains all assigned
Unicode characters. There is a new debugging function, `%char-set-dump'.
** Character functions operate on Unicode characters
char-upcase and char-downcase use default Unicode casing rules.
Character comparisons such as char<? and char-ci<? are now sorting
based on Unicode code points.
`char-upcase' and `char-downcase' use default Unicode casing rules.
Character comparisons such as `char<?' and `char-ci<?' now sort based on
Unicode code points.
** Removed deprecated uniform array procedures: scm_make_uve,
scm_array_prototype, scm_list_to_uniform_array,
@ -152,6 +154,20 @@ For example, the old (lang elisp) modules are meant to be interpreted,
not compiled. This bug will be fixed before 2.0. FIXME 2.0: Should say
something here about module-transformer called for compile.
** Files loaded with `load' will now be compiled automatically.
As with files loaded via `primitive-load-path', `load' will also compile
its target if autocompilation is enabled, and a fresh compiled file is
not found.
There are two points of difference to note, however. First, `load' does
not search `GUILE_LOAD_COMPILED_PATH' for the file; it only looks in the
autocompilation directory, normally a subdirectory of ~/.cache/guile.
Secondly, autocompilation also applies to files loaded via the -l
command-line argument -- so the user may experience a slight slowdown
the first time they run a Guile script, as the script is autocompiled.
** New POSIX procedures: `getrlimit' and `setrlimit'
Note however that the interface of these functions is likely to change
@ -536,9 +552,48 @@ Internally, strings are now represented either in the `latin-1'
encoding, one byte per character, or in UTF-32, with four bytes per
character. Strings manage their own allocation, switching if needed.
Currently no locale conversion is performed. Extended characters may be
written in a string using the hexadecimal escapes `\xXX', `\uXXXX', or
`\UXXXXXX', for 8-bit, 16-bit, or 24-bit codepoints, respectively.
Extended characters may be written in a literal string using the
hexadecimal escapes `\xXX', `\uXXXX', or `\UXXXXXX', for 8-bit, 16-bit,
or 24-bit codepoints, respectively, or entered directly in the native
encoding of the port on which the string is read.
** Support for non-ASCII source code files
The default reader now handles source code files for some of the
non-ASCII character encodings, such as UTF-8. A non-ASCII source file
should have an encoding declaration near the top of the file. Also,
there is a new function, `file-encoding', that scans a port for a coding
declaration. See the section of the manual entitled, "Character Encoding
of Source Files".
The pre-1.9.3 reader handled 8-bit clean but otherwise unspecified source
code. This use is now discouraged.
** Support for locale transcoding when reading from and writing to ports
Ports now have an associated character encoding, and port read and write
operations do conversion to and from locales automatically. Ports also
have an associated strategy for how to deal with locale conversion
failures.
See the documentation in the manual for the four new support functions,
`set-port-encoding!', `port-encoding', `set-port-conversion-strategy!',
and `port-conversion-strategy'.
** String and SRFI-13 functions can operate on Unicode strings
** Unicode support for SRFI-14 character sets
The default character sets are no longer locale dependent and contain
characters from the whole Unicode range. There is a new predefined
character set, `char-set:designated', which contains all assigned
Unicode characters. There is a new debugging function, `%char-set-dump'.
** Character functions operate on Unicode characters
`char-upcase' and `char-downcase' use default Unicode casing rules.
Character comparisons such as `char<?' and `char-ci<?' now sort based on
Unicode code points.
** Global variables `scm_charnames' and `scm_charnums' are removed