source: project/chicken/branches/chicken-3/NEWS @ 13411

Last change on this file since 13411 was 13411, checked in by Ivan Raikov, 11 years ago

Reverted srfi-18.scm to that of Chicken 3.4.0

File size: 26.7 KB
Line 
13.5.1
2
3- Reverted srfi-18 to that Chicken 3.4.0
4
53.5.0
6
7- Default inlined character-case operations use lowest 8 bits only
8  [caused bug reported by Peter Bex]
9- Replaced PCRE regex engine with Alex Shinn's "irregex" regular
10  expression package
11- Fixed bug in number->string in base 2. [reported by Kevin Beranek]
12- Fixed bug in ##sys#custom-input-port which caused char-ready? to
13  always return true for any process ports. [Alex Shinn]
14- chicken-setup now creates the the download directory
15  before checking for existence of .egg files [reported by Alejandro Forero Cuervo]
16- Added some port checks for tcp operations [reported by Peter Bex]
17
183.4.0
19
20- Fixes to the MinGW build.
21- PCRE 7.7
22- Bug fix for bitwise-or use [Joerg Wittenberger]
23- Bug fix in thread-terminate! [thanks to Joerg Wittenberger]
24- Cygwin build patched to put the runtime libraries in the right place.
25  [thanks to Nathan Thern]
26- added support for out-of-tree compilation (via the SRCDIR variable)
27  [thanks to Ivan Shmakov]
28- bug fix for (string->number "/")
29- support for selective procedure profiling in the compiler
30- unit utils: moved file- and pathname-related procedures to unit files
31- new unit files
32
33
343.3.0
35
36- bug fix for bitwise-or use [Joerg Wittenberger]
37- bug fixes for tickets  393, 430, 436
38- bug fix pointer->address
39- the build system now sets the SONAME field of libchicken.so under Linux
40- fixed an allocation bug in decode_literal
41- some fixes to the build system when USE_HOST_PCRE is set
42- added use of unit ports to unit extras and chicken-setup
43- unit utils and extras: moved port extensions to unit ports
44- new unit ports
45
463.2.0
47
48- unit extras: moved lists, queues, strings to data-structures
49- new unit data-structures
50- unit library: symbol->string now copies its argument
51- chicken-setup: added option -svn-trunk
52- unit utils: added file-copy and file-move (request by the einit team)
53- unit srfi-69: added hash-table-clear!
54- unit srfi-69: new
55- unit extras: moved SRFI 69 to unit srfi-69
56
573.1.0
58
59- svnrevision.sh - cleaned logic to prevent invalid error message
60- csc - fixed bug preventing static linking of executables (build order issues)
61- unit regex: PCRE 7.6
62- unit regex: avoid string copy in regex matching [Jim Ursetto]
63- chicken-setup: eggs are downloaded to and compiled in a temporary
64  directory determined by CHICKEN_TMPDIR or TMPDIR environment
65  variables, or by -build-prefix and -download-dir options,
66  respectively; -destdir option is replaced with -install-prefix.
67- unit tcp: use of offset into string rather than substring for faster
68  socket write [Jim Ursetto]
69- MSVC can now be used to build the system, when standard UNIX tools (like
70  MSYS) are available [Many thanks to Ashley]
71- unit library: added "flonum-print-precision" for changing the default of
72  16
73- unit posix: create-directory can now handle DOS drive letters
74  in the given path
75- unit posix: added stat- predicates for file types
76- unit posix: added strftime format string support to "time->string"
77- unit posix: added "string->time", which takes a strptime format string
78  (Unix only)
79- unit extras: added "left-section", "right-section", "none?", "always?",
80  and "never?"
81- unit extras: added "hash-table-merge", "hash-table-map",
82  "hash-table-for-each", and extended "make-hash-table" with minimum/maximum
83  load & initial value
84- unit extras: added "eq?-hash", "eqv?-hash", "equal?-hash", "number-hash",
85  "symbol-hash", "keyword-hash", "##sys#number-hash-hook", and
86  "hash-by-identity" as a synonym for "eq?-hash"
87
883.0.0
89
90- upgraded scheme-complete.el to version 0.6 [Thanks to Alex Shinn]
91- unit library: added "blob=?"
92- the library can optionally be built with an already installed libpcre
93- chicken-setup accesses a separate set of eggs, specific on the major CHICKEN
94  version (3)
95- added csi options "-p" ("-print") and "-P" ("-pretty-print")
96- support for Mac OS X universal binaries hase been added [Thanks to Zbigniew]
97- `cond-expand' is available in the set of core macros [Thanks to Alex Shinn]
98- On sparc64 architectures more than 126 procedure arguments are allowed
99  [Thanks to Peter Bex]
100- posix unit: "seconds->string" and "time->string" have now their trailing
101  #\newline character removed. THIS IS A BACKWARD-INCOMPATIBLE CHANGE.
102
1032.739
104
105- the SVN checkout can now be built from a bootstrapping tarball without
106  the need for a pre-installed "chicken" executable
107- literals are compiled in a platform-independent binary encoding into
108  the executable which results in faster C compile times and moe compact
109  binaries. This also makes the "compress-literals" option and declaration
110  unnecessary
111- the "-compress-literals" compiler option and the "compress-literals"
112  declaration have been removed
113- the CHICKEN_HOME environment variable is now obsolete, use CHICKEN_PREFIX
114  and possibly CHICKEN_REPOSITORY_PATH
115- added pre GC hook C-level variable
116- Cygwin is now fully supported
117- removed deprecated functions:
118  extension-info
119  print-backtrace
120  test-feature?
121  ___callback (chicken.h)
122  foreign-callback-lambda[*]
123  thread-deliver-signal!
124  critical-section
125  enable-interrupts
126  disable-interrupts
127  invalid-procedure-call-handler
128- There is no platform-dependent pathname directory separator
129  anymore, the slash ("/") and backslash ("\") characters can be
130  used interchangably
131- New procedures "regexp*", "regex-optimize" and "make-anchored-pattern"
132  (regex library unit)
133- New procedures "terminall-size", "terminal-name" and "get-host-name"
134  (posix library unit)
135- chicken-setup: can create repository catalog file from local
136  SVN checkout of egg repository
137- chicken-setup has the new option "-host-extension" to force
138  compiling extensions in "host" mode when using a cross-compiling
139  chicken
140- Better cross-development support for the build system (the
141  Makefile accepts various variables for customizing the build)
142- "file-size" and "file-stat" handle file-sizes of >4GB now
143- "find-files" collects directories as well, now [Thanks to Ivan Raikov]
144- added "dist" target to toplevel makefile
145- "andmap" and "ormap" have been deprecated
146- makefiles support relinking now
147- added "thread-wait-for-i/o!" (srfi-18 library unit)
148- the "chicken-bug" program can now be used to create bug reports
149  and send them to the CHICKEN maintainers
150
1512.717
152
153- New binary compatibility version (3) - installed eggs mst be recompiled!
154- deprecated "shift!" and "unshift!"
155- regex unit:
156  Uses PCRE 7.4
157- utils unit:
158  Uses compiled regular expressions
159- unit posix:
160  Uses compiled regular expressions
161- removed build option for extra symbol slot
162- added Lisp-style symbol property lists
163
1642.701
165
166- countless bugfixes and minor improvements
167- new foreign types:
168  [nonnull-]unsigned-c-string[*]
169  c-string-list[*]
170- added "unused" declaration specifier
171- new GNU Make based build process
172- libffi is not used anymore, handcoded assembler is used for x86, x86-64
173  and powerpc platforms
174- library unit:
175  blob?
176  make-blob
177  blob-size
178  string->blob
179  blob->string
180- regex unit:
181  glob?
182- utils unit:
183  directory-null?
184  port-fold
185- extras unit:
186  hash-table-remove!
187- lolevel unit:
188  mutate-procedure
189- srfi-4 unit:
190  XXXvector->blob[/shared]
191  blob->XXXvector[/shared]
192- csc options:
193  -cxx-name
194  -disable-compiler-macros
195- byte-vectors have been removed and replaced by new "blob" type,
196  added various blob<->SRFI-4 vector conversion procedures in srfi-4 unit
197- ":optional" has been renamed to "optional" (the old name is still
198  available but deprecated)
199- "switch" has been replaced by "select" ("switch" is still available but
200  deprecated)
201- "tcp-connect" and "tcp-accept" handle time-outs via parameters
202  "tcp-connect-timeout" and "tcp-accept-timeout"
203- tcp unit: support for read/write timeouts
204
205
2062.6
207
208- Many bugfixes
209- Better support for Sun's C compiler
210- Input-performance has been improved
211- PCRE (Perl compatible regular expressions) by Philip Hazel is now
212  bundled with CHICKEN
213- Static linking of extensions is now possible (when supported by
214  the egg)
215- The interpreter warns about references to potentially unbound variables
216  in loaded code and expressions entered on the REPL
217- The expansion process is traced during compilation and interpretation
218  to give (slightly) more usable syntactic context in error messages
219- library:
220  * added `any?`, `bit-set?' and `on-exit'
221- eval:
222  * new procedure `set-parameterized-read-syntax!'
223- posix:
224  * SRFI-17 setters for `file-position`, `current-user-id',
225    `current-group-id', `process-group-id'; the respective setter-procedures
226    are still available but have been deprecated
227  * `file-stat' returns more information (including device info)
228  * added `process*'
229- extras:
230  * added `read-string!'
231- utils:
232  * `apropos' and `apropos-list' procedures
233- srfi-4:
234  * added `read-u8vector', `read-u8vector!' and `write-u8vector'
235- srfi-18: 
236  * added `time->milliseconds' and `milliseconds->time'
237- csi:
238  * `-ss SCRIPTNAME' option
239- csc:
240  * accepts options given in the environment variable `CSC_OPTIONS'
241  * new options `-static-extensions' and `-host'
242- chicken/csc:
243  * new option `-keep-shadowed-macros'
244- chicken-setup:
245  * accepts options given in the environment variable `CHICKEN_SETUP_OPTIONS'
246  * allows retrieval and installation of eggs from subversion repository
247    and the local filesystem
248  * new options `-tree FILENAME', `-svn', `-local', `-revsion' and
249    `-destdir PATHNAME'
250  * added helper procedures `required-chicken-version' and
251    `required-extension-version'
252- Lots of improvements in the CMake build
253
254Many thanks to Ingo Bungener, Peter Busser, John Cowan, Marc Feeley,
255Stephen Gilardi, Mario Domenech Goulart, Joshua Griffith, Sven
256Hartrumpf, Daishi Kato, mejedi, Dan Muresan, Deanna
257Phillips, Robin Lee Powell, Ivan Raikov, Danial Sadilek, Alex Shinn,
258Tony Sideaway, Minh Thu for reporting bugs, suggesting improvements
259and contributing fixes.
260
261Thanks again to Brandon Van Every for his extensive work on the CMake
262build process.
263
264Special thanks to Kon Lovett for many improvements made in the posix
265library.
266
267
2682.5
269
270- Bugfixes
271- CHICKEN can now be built using CMake <http://www.cmake.org>, in fact CMake
272  is required to built CHICKEN from sources on Windows with the Microsoft
273  tools
274- the whole build process has been cleaned up and simplified
275- the "easyffi" and "tinyclos" library units have been removed from the base
276  system and are now available as separate extensions
277- the deprecated "set-dispatch-read-syntax!" has been removed
278- Will Farr cleaned up the behaviour of number-type specific numeric operations
279  ("fx..."/"fp...") with respect to safe/unsafe mode
280- added "(finite? NUMBER)"
281- the "$" macro moved into its own separate extension
282- the values of "software-type", "software-version", "machine-type" and "machine-byte-order"
283  are now registered as features and can be tested using "cond-expand" or "#+"
284- all tools now support the "-release" option
285- chicken-setup: added "-test" option
286
287Special thanks to Brandon Van Every, who put considerable effort into the
288CHICKEN build system and who ported it to CMake completely from scratch.
289The installation instructions and build file are extensively documented and may
290serve as a tutorial for creating non-trivial software projects with CMake.
291Thanks, Brandon! Also thanks to Bill Hoffmann and Brad King from Kitware
292for their support.
293
294Many thanks to Peter Bex, Toby Butzon, Thomans Chust, John Cowan, Alejandro Forero Cuervo,
295dgym, Alex Drummond, Mario Domenech Goulart, Kon Lovett, Benedikt Rosenau and Zbigniew
296Szadkowski for reporting bugs, suggesting improvements and contributing fixes.
297
298
2992.41
300
301- Bugfixes galore
302- compiler:
303  * added support for the generation of "export" files through the "-emit-exports" option
304  * new option `-check-imports' (csc: `-G') checks for unimported symbols and can be quite
305    helpful in finding unbound variable errors (this requires all extensions ("eggs") to be
306    adapted to this new feature, a process which isn't complete yet)
307  * new declarations `emit-exports', `constant' and `import'
308  * new option `-disable-warning' and declaration `disable-warning'
309  * new options `-release' and `-import'
310- chicken-setup:
311  * new `exports' extension property
312  * option `-check' checks for extension upgrades
313  * added `-eval' option
314  * added parameters `setup-install-flag' and `setup-verbose-flag'
315- FFI:
316  * added the handy `$' macro, which lets you do foreign calls directly without declaring
317    a placeholder procedure
318  * `define-foreign-enum' for treating C enums as symbol-sets
319  * `foreign-safe-wrapper' has been deprecated
320- Slight reorganization of TinyCLOS and match macros and support code
321- `thread-join!' has been generalized to allow a thread to have multiple results
322- Renamed `thread-deliver-signal!' to `thread-signal!' and `invalid-procedure-call-handler'
323  to `set-procedure-call-handler!'
324- The system can be configured to add an extra slot to symbol objects
325- Another configuration option enables GC of unused symbols by default
326- The extension repository is now versioned to catch binary incompatible
327  installations, this requires to either move all installed extensions to the
328  new location ("$prefix/lib/chicken/1") or reinstall them
329- Now supports SRFI-61 (extended `cond')
330- Added procedures `load-relative', `tcp-buffer-size`, `string-chomp'
331- trivial implementations of `real-part', `imag-part', `angle' and `magnitude' have
332  been added to the library to allow more portable code
333- Breakpoints and single-stepping of compiled code on the function-level, new
334  procedures `breakpoint' and `singlestep'
335- csi: new toplevel commands `,info', `,step', `,br', `,ubr', `,breakall', `,breakonly',
336  `,exn' and `,c'
337- csi: `set-describer!' allows definition of custom output for the `,d' command
338- Added `integer64' foreign type specifier
339- The environment variable "CHICKEN_PREFIX" allows (together with "CHICKEN_REPOSITORY") overriding
340  the installation path prefix in case you want to install and run multiple instances/versions
341  of CHICKEN or install on a shared network
342- csc: added `-dry-run' option
343- removed `-split...' options (and the ability to generate multiple C files from a single
344  Scheme file)
345- `crictical-section', `disable-interrupts' and `enable-interrupts' shouldn't be used from
346  now on (deprecated), use SRFI-18 mutexes instead
347
348Many thanks to Nico Amtsberg, Arto Bendiken, Jean-Francois Bignolles, Peter Busser, Thomas Chust,
349John Cowan, Alejandro Forero Cuervo, Jaarod Eells, Brandon van Every, Graham Fawcett, Mario Domenech
350Goulart, Sven Hartrumpf, Markus Hülsmann, Goetz Isenmann, Heath Johns, Daishi Kato, Kon Lovett, Dan
351Muresan, Ian Oversby, Göran Weinholt, Burton Samograd, Reed Sheridan, Alex Shinn, Sunnan, Zbigniew
352Szadkowski and Peter Wright for their helpful contributions, suggestions and bug reports!
353
354
3552.3
356
357- Many many bugfixes
358- compiler:
359  * new option `-profile-name FILENAME'
360- the `chicken-config' script has been removed, identical functionality can be provided
361  by `csc'
362- csc:
363  * new option `-objc' compiles generated C files in Objective-C mode
364  * accepts .m files and handles the case when only object files are given
365  * new options `-framework', `-F<dir>' and `-rpath'
366  * options `-home', `-cflags', `-ldflags', `-libs', `-cc-name' and `-ld-name'
367- chicken-setup:
368  * detects whether eggs are gzipped or not and accepts ungzipped eggs
369  * if no other actions are specified and no eggs are given on the command line, then
370    all .setup scripts in the current directory are executed
371  * added `setup-build-directory' and `setup-root-directory' parameters
372  * helper procedures `copy-file', `move-file', `remove-file' and `create-directory'
373- csi commands `,s', `,l' and `,ln' accept multiple inputs, the `trace'/`untrace'
374  macros have been replaced byy the toplevel commands `,tr' and `,utr'
375- new toplevel commands in csi can be defined with the `toplevel-command' procedure
376- `extension-info' has been renamed to `extension-information'. The old name is
377  still available, but deprecated
378- `print-backtrace' has been renamed to `print-call-chain'. The old name is still
379  available (and deprecated)
380- `transcript-on' and `transcript-off' are no longer supported
381- New macro `define-for-syntax'
382- library:
383  (get-call-chain [DEPTH])
384  (current-read-table)
385  (copy-read-table READ-TABLE)
386  (current-gc-milliseconds)
387  `print-error-message' writes now to the current output-port, not the error port
388  `number-string' does now a slightly better job converting large exact integers
389  with non-decimal base
390- extras:
391  (each PROC ...)
392  `hash-table-ref' throws (exn access) on error
393- posix:
394  (local-time->seconds TIME)
395  (utc-time->seconds TIME)
396  (local-timezone-abbreviation)
397  `directory' takes optional path and dotfiles arguments
398  `[group|system]-information' return lists instead of multiple values
399- tcp:
400  (tcp-port-numbers PORT)
401- `set-dispatch-read-syntax!' has been renamed to `set-sharp-read-syntax!' (the old
402  name is still available but deprecated)
403- evaluated code generates call-trace information (as compiled code does), which
404  results in much better back-traces.
405- new foreign types `[unsigned-]int32' and `[unsigned-]integer32'
406- added SRFI-17 setters for many accessors of the core libraries
407- tinyclos: added a couple of missing classes for core library structures
408- `let[*]-values' is now SRFI-11 compliant
409- the finalizer-table is now resized dynamically, which speeds up code that uses
410  very many finalizers [Thanks to Zbigniew Szadkowski]
411- reloading compiled code dynamically does basically work (but still leaks memory)
412- the manual contains a section on pattern matching
413- libffi is used by default, when available
414- CHICKEN has now experimental support for the "CMake" build system <http://www.cmake.org>
415  Many thanks to Bill Hoffmann from Kitware and Brandon van Every for helping with this
416- added compiler/runtime support for object serialization via the `s11n' extension
417  (see <http://www.call-with-current-continuation.org/eggs/s11n.html>)
418
419Sergey Khorev has offered to help with maintaining the Windows port of CHICKEN.
420Thanks, Sergey!
421
422Many thanks Jean-Francois Bignolles, Patrick Brannan, Adam Buchbinder, Hans Bulfone, Category 5,
423John Cowan, datrus, Guillaume Germaine, Mario Domenech Goulart, Daniel B. Faken, Andrey Fomichev,
424Jarod Eells, Sven Hartrumpf, David Janssens, Daishi Kato, Levi Pearson, Pupeno, Eric Raible, Benedikt
425Rosenau, Reed Sheridan, Zbigniew Szadkowski and Mark Wutka for their helpful contributions,
426suggestions and bug reports!
427
428Special thanks to Kon Lovett for fixing countless open issues and many useful sugestions.
429
430
4312.2
432
433- Many bugfixes
434- The read-syntax `#+X Y' is provided as a shorthand for `(cond-expand (X Y) (else))'
435- `foreign-parse' and `foreign-parse/spec' have been removed
436- lolevel: Executable byte-vector stuff has been removed
437- SRFIs 28, 31, 62 and 69 are now officially supported
438- New compiler option `-extension' simplifies static compilation of eggs
439- csc: changed `-E' to `-P', `-E' is now an alias for `-extension'
440- Embedding:
441  * All the `entry-point' related things have been removed, as has been `define-embedded',
442    calling Scheme from C is now exclusively done with callbacks
443  * Integrated boilerplate embedding API into the `eval' unit
444  * Added `CHICKEN_continue' API function
445  * Default "stub" toplevel (`CHICKEN_default_toplevel') allows embedding without a
446    separate Scheme file
447  * Different stack-levels during invocation of CHICKEN_run or callbacks could result
448    in crashes - this is now detected (or can be checked manually)
449- Added extension-specifier `(version ...)'
450- New FFI macros `foreign-declare', `foreign-parse' and `foreign-parse/declare' replace
451  the declaration-specifiers of the same name
452- Hash-table resizing was ridiculously slow, and should now be much faster
453- `define-foreign-record' handles recursive structures
454- `require-extension' is now available by default, and so can be used with the
455  plain Scheme evaluator
456- Procedures now contain some basic debug information, unless a file was compiled
457  with `-no-lambda-info'
458- compiler: `-debug-level 2' is now the default (enables trace- and lambda-info)
459- chicken-setup:
460  * handles direct downloads from arbitrary URLs
461  * HTML documentation for eggs can now be included into the egg and will be installed
462    in the repository (using the `documentation' info-property)
463  * `chicken-setup -docindex' shows path of generated documentation index for all
464    installed eggs
465- extras:
466  * SRFI-69 is now fully supported, note that THIS WILL BREAK EXISTING CODE, since
467    the API is not compatible to the previous one
468  * `clear-hash-table!', `get' and `put!' are gone
469  * `read-file' accepts optional reader procedure and max count
470  * `read-lines' accepts filename instead of port
471- library:
472  * `signum' is now exactness-preserving
473  * `procedure-information' returns some basic debug info for a given procedure
474  * Added `(warning MESSAGE ARGUMENTS ...)'
475  * `(promise? X)'
476- posix:
477  * `(current-directory DIR)' is equivalent to `(change-directory DIR)'
478- regex:
479  * `pattern->regexp' has been renamed to `glob->regexp'
480- The `format' library unit has been removed from the base system and is noww available
481  separately
482- SRFI-17, on the other hand has been moved into the base system
483- String literals and the print-names of symbol literals are now allocated in static
484  (non-GC'd) memory
485- If static or shared build is disabled, no `...-static' executables will be generated
486
487
488Many thanks to Ashley Bone, Thomas Chust, John Cowan, Alejandro Forero Cuervo, Daniel Faken, Sven
489Hartrumpf, Daishi Kato, Sergey Khorev, Kon Lovett, Gene Pavlovsky, Reed Sheridan and Ed Watkeys for
490their helpful contributions, suggestions and bug reports!
491
492
4932.0
494
495- Many bugfixes
496- Loads of minor improvements (better error messages, more warnings, more error
497  checks, etc.)
498- On systems supported by the "libffi" library, the 128-argument limit can
499  be exceeded (currently to an arbitrary maximum of 1000). To take advantage
500  of this, add `--with-libffi' to the configuration options when building
501  chicken
502- The `libsrfi-chicken' and `libstuffed-chicken' libraries have been folded
503  into `libchicken', so only a single library is linked with generated
504  executables, which greatly simplifies and speeds up the build process.
505  It is recommended to remove any traced of `libstuffed-chicken.*' and
506  `libsrfi-chicken.*' before installing a new release. This requires also
507  to reinstall all eggs (extension libraries).
508- The compiler is able to inline more procedure calls
509- Implicit non-multival continuations (like in `begin' or 'let') accept multiple
510  values and discard all but the first value
511- finalization should actually work now and is much more efficient (unless
512  used excessively)
513- csi:
514  `advise' has been removed
515  `-eval' implies `-batch' and `-quiet'
516  added `-require-extension'
517  short option names are now supported and may be collapsed, if unambigous
518- New runtime options:
519  -:b (enter REPL on error)
520  -:B (ring bell on every major GC)
521  -:fNNN (set pending finalizer maximum limit)
522- New compiler options:
523  -accumulate-profile
524  -inline
525  -inline-limit
526  -emit-external-prototypes-first
527- The compiler-option `-require-for-syntax' has been renamed to `-require-extension'
528  and is the same as putting a `(require-extension ...)' form directly into the code
529- Removed compiler- and interpreter option `-no-feature'
530- New declarations:
531  (lambda-lift)
532  ([not] inline)
533  (inline-limit LIMIT)
534  (emit-external-prototypes-first)
535  ([not] check-c-syntax)
536- `foreign-callback-lambda[*]' has been renamed to `foreign-safe-lambda[*]' - the
537  old names are still valid but deprecated
538- New foreign type specifier `scheme-pointer' (the same as `pointer', which is
539  deprecated now)
540- Easy FFI:
541  `___scheme_pointer' and `___byte_vector' pseudo types
542  `___pointer' and `___length' markers
543  `default_renaming' and `opaque' pseudo declarations
544  `___inout' and `___out' argument markers work also for C++ reference types
545  Recognizes `C_word' and `size_t'
546- The reader supports selective case sensitive/insensitive reading using the
547  `#cs...' and `#ci...' syntax (as supported in PLT Scheme)
548- `\uXXXX' and `\UXXXXXXXX' escape-sequences for string literals
549- `#\UXXXXXXXX' character literal syntax
550- `\v', `\a' and `\f' escape sequences and `#\delete', `#\esc', `#\alarm', `#\vtab'
551  and `#\nul' character literals
552- `chicken-setup' supports proxy connections via the `-proxy' option
553- library:
554  (set-dynamic-load-mode! MODE)
555  `(end-of-file)' has been removed (use `#!eof' instead)
556- The alternative continuation API described in Marc Feeley's paper
557  "A better API for first class continuations" is supported natively:
558  (continuation-capture PROC)
559  (continuation-graft K THUNK)
560  (continuation-return K VALUE ...)
561  (continuation? X)
562- `foreign-primitive' and `define-extension' macros
563- tinyclos:
564  (instance-of? X)
565  `define-method' specializes on all arguments and allows DSSSL keyword argument lists
566- eval:
567  (set-dispatch-read-syntax! CHAR PROC)
568- extras:
569  (hash-table-update! HT KEY PROC INIT)
570  (hash-table-exists? HT KEY)
571  (hash-table-values HT)
572  (hash-table-keys HT)
573  (alist->hash-table ALIST [TEST SIZE])
574  `hash-table->list' has been renamed to `hash-table->alist
575  `hash-table-for-each' takes the arguments in reversed order (the old order is still
576  valid but deprecated)
577  Hash-tables support now user-defined hash functions
578- posix:
579  (file-link OLD NEW)
580  (symbolic-link? FILENAME)
581  (regular-file? FILENAME)
582  errno/exist
583  `process' and `process-execute' allow passing an environment
584- regex:
585  (regexp-escape STR)
586- tcp:
587  (tcp-listener-fileno LISTENER)
588- utils:
589  (port-for-each FN THUNK)
590  (port-map FN THUNK)
591- On Windows, the batch file `win-install.bat' can be used to install the system
592  into the desired location
593- Building Chicken on Windows with the free development tools from Microsoft (VCToolkit,
594  Platform Core SDK) has been tested and is documented in the file `vctk-install.txt'
595- The `-script-meta' option has been removed
596- The srfi-25 and srfi-37 library units and the test-infrastructure facility have been
597  removed from the core system and is now separately available as an extensions (eggs)
598- The syntax-case macro and module system has been removed and also available as an
599  extension. This implies that all compiler- and interpreter options related to hygienic
600  macros and syntax-case are gone as well.
601- All strictness compiler- and interpreter options (and the `strict-reader' parameter)
602  have been removed
603- the `examples' directory and its contents have been removed from the distribution
604 
605
606Many thanks to William Annis, Mark Baily, Peter Bex, Dominique Boucher, Patrick Brannan,
607Thomas Chust, Alejandro Forero Cuervo, Graham Fawcett, Damian Gryski, Sven Hartrumpf,
608Hans Huebner, Christian Jaeger, Dale Jordan, Daishi Kato, Sergey Khorev, Krysztof Kowalczyk,
609Goran Krampe, John Lenz, Kon Lovett, Scott G. Miller, Julian Morrison, Nicolas Pelletier,
610Carlos Pita, Benedikt Rosenau, Andreas Rottmann, Reed Sheridan, Alex Shinn, Andrey Sidorenko,
611Michele Simionato, Volker Stolz, Sunnan, Zbigniew Szadkowski, Andre van Tonder, Henrik
612Tramberend and Mark Wutka for their helpful contributions, suggestions and bug reports!
Note: See TracBrowser for help on using the repository browser.