source: project/chicken/branches/hygienic/ChangeLog.20040412 @ 10530

Last change on this file since 10530 was 5358, checked in by felix winkelmann, 13 years ago
  • renamed manual dir
  • can't get cmake to handle assembler file. I give up.
  • removed darcs link from site index
  • trivial build output changes
  • some more cleanup, trivialities
  • I'm out of ASCII banners
File size: 125.3 KB
Line 
12004-11-29  flw  <flw@gurke>
2
3        * README, build.scm, chicken-setup.1, chicken-setup.scm, chicken.texi, configure.in, eval.scm, parameters.scm, wwchicken:
4        some bugfixes
5
6        - eval: ##sys#do-the-right-thing tested feature at compile time, which didn"t of course apply to the run-time
7          of compiled programs
8        - chicken-setup: added `-no-install" option
9
102004-11-29  iamphet  <iamphet@gurke>
11
12        * csc.scm.in: mingw32: output .dll rather than .so
13
142004-11-24  flw  <flw@gurke>
15
16        * README: *** empty log message ***
17
182004-11-24  iamphet  <iamphet@gurke>
19
20        * eval.scm, parameters.scm: - mingw32: fixed dll names to search
21
222004-11-22  flw  <flw@gurke>
23
24        * csc.scm.in, eval.scm, hen.el, library.scm, makefile.vc, posixwin.scm, runtime.c, TODO, chicken.h, chicken.texi:
25        Bugfixes, Sergey"s dlll-runtime changes
26
27        - eval: warning for declarations in interpreted code passed wrong argument to `error"
28        - hen.el: added changes contributed by Micky Latowicki
29        - library: `c-runtime" returns information about linked C runtime library; MSVC build supports linking with
30          dynamic runtime libs [Thanks to Sergey Khorev]
31        ***DARCS***
32
33        Write the long patch description into this file.
34        The first line of this file will be the patch name.
35        Everything in this file from the above ***DARCS*** line on will be ignored.
36
37        This patch contains the following changes:
38
39        M ./chicken.h +1
40        M ./chicken.texi -2 +12
41        M ./csc.scm.in -1 +1
42        M ./eval.scm -1 +1
43        M ./hen.el -551 +410
44        M ./library.scm +4
45        M ./makefile.vc +3
46        M ./posixwin.scm -2
47        M ./runtime.c -2 +60
48
492004-11-17  flw  <flw@gurke>
50
51        * TODO, build.scm, chicken.texi, configure.in, srfi-13.scm, wwchicken, Makefile.am, README:
52        - Fixed bug in handling of `pretty-print-width" [Thanks to Lars Rustemeier]
53        - Makefile.am: added `csc.scm" to CLEAN_FILES [Thanks to Sven Hartrumpf]
54        - srfi-13: fixed handling of string-parse-start+end return values [Thanks to Alex Shinn]
55
562004-11-12  flw  <flw@gurke>
57
58        * HACKING, README, build.scm, chicken.texi, compiler.scm, configure.in, csi.scm, easyffi.scm, eval.scm, examples/eval-client.c, examples/eval-server.scm, examples/makefile.vc, extras.scm, library.scm, parameters.scm, srfi-18.scm, syntax-case.scm, vcbuild.bat, wwchicken:
59        - srfi-18: added Chris Double"s repl-hack to allow running threads while waiting for user input
60        - fixed several bugs in examples/makefile.vc [Thanks to Psy-Kosh]
61        - easyffi: handles typedef"s for function types
62        - fixed bug in `set-extension-specifier!"
63        - SRFI-55 support
64        - `declare" in interpreted code generates a warning
65        - `use"/`require-extension" also checks `##sys#features" when resolving requirements
66
672004-11-03  flw  <flw@gurke>
68
69        * chicken-setup.scm, chicken.h, chicken.texi, configure.in, runtime.c, wwchicken:
70        - Added externally visible procedures `C_do_[un]register_finalizer()" [as suggested by John Lenz]
71        - fixed typo in chicken-setup [Thanks to Brian Mastenbrook]
72
73        * README, build.scm:
74        - Added externally visible procedure `C_do_register_finalizer()" [as suggested by John Lenz]
75
762004-11-01  flw  <flw@gurke>
77
78        * HACKING, README, build.scm, chicken-setup.scm, chicken.texi, configure.in, csc.1, easyffi.scm, makefile.vc, wwchicken:
79        - easyffi: structure-maker accepts init-arguments
80        - `chicken-setup" is now built on Windows systems with the MSVC compiler (preliminary)
81
822004-10-18  flw  <flw@gurke>
83
84        * benchmarks/shootout/bench, chicken.texi, csc.scm.in, easyffi.l, easyffi.scm, extras.scm, support.scm, wwchicken, HACKING, README, batch-driver.scm, c-platform.scm, chicken-setup.1, chicken-setup.scm, chicken.1, chicken.css, chicken.h:
85        - recovered some lost changes in csc.scm.in
86        - compiler: `-raw" option
87        - utils: `shift!" and `unshift!"
88        - fixed unneeded entries in chicken.css [Thanks to Johannes Groedem]
89        - easyffi: added support for C structures and unions
90        - compiler: if the last top-level form of a file compiled into a shared object returned #f, dynamic loading
91          would fail.
92        - extras: the second argument to `string-intersperse" defaults to " ".
93
942004-10-11  flw  <flw@gurke>
95
96        * Makefile.am, README, TODO, banner.scm, build.scm, chicken.h, chicken.texi, configure.in, csc.scm.in, csi.scm, easyffi.l, easyffi.scm, library.scm, tinyclos.scm:
97        - tinyclos: there was no default initialize method for subclasses of <primitive> [Thanks to Johannes Groedem]
98        - csc: ".h" and ".hpp" files are processed as Scheme compiled with -ffi; Lars Nilsson pointed out a bug in the
99          handling of "-l..." on Windows
100        - easyffi: ___in/___out/___inout qualifiers
101        - library: `#\xXX" and `#\uXXXX" syntax
102        - Makefile.am: README.CVS and chicken.pdf are not installed
103
1042004-09-29  flw  <flw@gurke>
105
106        * Makefile.am, README, TODO, build.scm, chicken-setup.1, chicken-setup.scm, chicken.h, chicken.texi, compiler.scm, configure.in, easyffi.scm, eval.scm, match-support.scm, runtime.c, tweaks.scm:
107        - added `C_post_gc_hook"
108        - manual: clarified blocking behaviour of I/O from ports returned by `process" [Thanks to Tim Reid]
109        - extended range of character codes from 16 to 21 bit
110        - declarations are also registered in files loaded at compile-time
111        - chicken-setup: added `-dont-ask" option
112
1132004-09-23  flw  <flw@gurke>
114
115        * Makefile.am, README, TODO, chicken-setup.scm, chicken.h, chicken.texi, configure.in, extras.scm, psyntax.scm, syntax-case.scm, tinyclos.scm, wwchicken:
116        - configure.in: -DHAVE_ALLOCA_H will be added to CFLAGS on non-gcc platforms, if needed [Thanks to Mark Baily]
117        - chicken-setup: simple installs (with only a .scm file and no .setup file) keep the .so in the current directory
118        - added internal support for annotations in psyntax
119        - added some examples for `string-split-fields" [Thanks to Christian Pohlmann]
120        - The Makefile handles now the situation when the system is build in a different directory than the current one
121          [Thanks to Daniel Goertzen]
122        - tinyclos: added default initializer for <c++-object> [Thanks to Sergey Khorev]
123        - extras: `pretty-print" handles pointer objects
124
1252004-09-20  flw  <flw@gurke>
126
127        * README, TODO, batch-driver.scm, benchmarks/shootout/bench, benchmarks/shootout/heapsort.chicken, benchmarks/shootout/matrix.chicken, benchmarks/shootout/meroon.scm, benchmarks/shootout/meroon/Basics.scm, benchmarks/shootout/meroon/Coercers.scm, benchmarks/shootout/meroon/access.scm, benchmarks/shootout/meroon/alloc.scm, benchmarks/shootout/meroon/anomaly.scm, benchmarks/shootout/meroon/careless.scm, benchmarks/shootout/meroon/clone.scm, benchmarks/shootout/meroon/clostest.scm, benchmarks/shootout/meroon/coinst.scm, benchmarks/shootout/meroon/definers.scm, benchmarks/shootout/meroon/dispatch.scm, benchmarks/shootout/meroon/egal.scm, benchmarks/shootout/meroon/fill.scm, benchmarks/shootout/meroon/genes1.scm, benchmarks/shootout/meroon/genes2.scm, benchmarks/shootout/meroon/handy.scm, benchmarks/shootout/meroon/instance.chicken, benchmarks/shootout/meroon/libgen.scm, benchmarks/shootout/meroon/macinst.chicken, benchmarks/shootout/meroon/macros.scm, benchmarks/shootout/meroon/makefile, benchmarks/shootout/meroon/maker.scm, benchmarks/shootout/meroon/meroon-syntax.scm, benchmarks/shootout/meroon/meroon.chicken, benchmarks/shootout/meroon/modify.scm, benchmarks/shootout/meroon/multi.scm, benchmarks/shootout/meroon/option.scm, benchmarks/shootout/meroon/revision.scm, benchmarks/shootout/meroon/runtime.scm, benchmarks/shootout/meroon/show.scm, benchmarks/shootout/meroon/size.scm, benchmarks/shootout/meroon/trace.scm, benchmarks/shootout/meroon/unveil.scm, benchmarks/shootout/meroon/utils.scm, benchmarks/shootout/meroon/walker.scm, benchmarks/shootout/methcall.chicken, benchmarks/shootout/nestedloop.chicken, benchmarks/shootout/objinst.chicken, benchmarks/shootout/prodcons.chicken, benchmarks/shootout/ringmsg.chicken, benchmarks/shootout/sumcol.chicken, build.scm, chicken.h, chicken.texi, configure.in, posix.scm, posixwin.scm, wwchicken:
128        - dynamic-and-unsafe marker was incorrectly generated for non-dynamic files
129        - added Sergey Khorev"s additions to posixwin.scm (system-information, get-host-name, sleep, process, process-wait)
130        - posix: added `set-root-directory!"
131        - shootout: fixed heapsort, objinst and methcall use meroon, now
132
1332004-09-15  flw  <flw@gurke>
134
135        * benchmarks/shootout/bench, benchmarks/shootout/hash.chicken, benchmarks/shootout/wordfreq.chicken, mingw/INSTALL, mingw/Makefile.in, mingw/autogen.sh, mingw/configure.sh, mingw/installdllv.sh, mingw/mingw-cc.sh, mingw/mingw-cxx.sh, wwchicken:
136        removed ming directory and posixstub.scm
137
1382004-09-13  flw  <flw@gurke>
139
140        * benchmarks/shootout/README, benchmarks/shootout/ackermann.chicken, benchmarks/shootout/ary.chicken, benchmarks/shootout/bench, benchmarks/shootout/echo.chicken, benchmarks/shootout/except.chicken, benchmarks/shootout/fibo.chicken, benchmarks/shootout/hash.chicken, benchmarks/shootout/hash2.chicken, benchmarks/shootout/heapsort.chicken, benchmarks/shootout/hello.chicken, benchmarks/shootout/lists.chicken, benchmarks/shootout/lists1.chicken, benchmarks/shootout/matrix.chicken, benchmarks/shootout/methcall.chicken, benchmarks/shootout/moments.chicken, benchmarks/shootout/nestedloop.chicken, benchmarks/shootout/objinst.chicken, benchmarks/shootout/prodcons.chicken, benchmarks/shootout/random.chicken, benchmarks/shootout/regexmatch.chicken, benchmarks/shootout/reversefile.chicken, benchmarks/shootout/sieve.chicken, benchmarks/shootout/spellcheck.chicken, benchmarks/shootout/strcat.chicken, benchmarks/shootout/sumcol.chicken, benchmarks/shootout/wc.chicken, benchmarks/shootout/wordfreq.chicken, compiler.scm, configure.in, csi.scm, eval.scm, makefile.vc, posix.scm, posixwin.scm, runtime.c, srfi-18.scm, syntax-case.scm, wwchicken, Makefile.am, README, TODO, banner.scm, build.scm, c-backend.scm, chicken-config.in, chicken-setup.scm, chicken.h, chicken.texi:
141        - eval.scm: `load" sets `##sys#current-load-file" to loaded filename for duration of load (needed for line-info in debug egg)
142        - chicken.h, runtime.c: Eric Raible did some much needed cleaning up [Thanks!]
143        - chicken-setup: added `-csc-option"; errors in scripts were not reported
144        - chicken-config: resurrected `-extra-libs", because the current version of SWIG needs it
145        - wwchicken: removed coloring of egg-entries (didn"t work properly anyway)
146        - runtime.c: FAKE_APPLY (inline-asm hack to simulate `apply") has been disabled - apparently gcc 3.3.3 generates funnny code
147          with -Os
148        - compiler, csc: added `post-process" declaration
149        - posix: added `memory-mapped-file?"
150        - added posixwin.scm [Thanks to Sergey Khorev!]
151        - csi: ,ln pprints currently evaluated expression
152        - eval.scm: `load-noisily" takes  couple of keyword arguments
153        - chicken-setup: allows aborting a sequence of installs
154        - srfi-18: `thread-start!" accepts a thunk as argument
155        - syntax-case: `debug-expand" accepts "p" which means: pprint and expand continuously
156
1572004-09-10  njbeckford  <njbeckford@gurke>
158
159        * README, configure.in:
160        Support shared libraries on MinGW by dropping -lm linker flag.
161        Got rid of creation of mingw/Makefile from mingw/Makefile.in
162
1632004-09-09  njbeckford  <njbeckford@gurke>
164
165        * Makefile.am, configure.in:
166        Use posixstub.scm instead of posix.scm for Mingw
167        Got rid of support for mingw/ directory
168        Do nothing in posixstub.scm
169
1702004-08-30  flw  <flw@gurke>
171
172        * FAQ.html, README, TODO, batch-driver.scm, build.scm, c-platform.scm, chicken-match-macros.scm, chicken.h, chicken.spec.in, chicken.texi, compiler.scm, configure.in, csi.scm, easyffi.scm, extras.scm, hen.el, library.scm, lolevel.scm, match-support.scm, psyntax-bootstrap.scm, psyntax.scm, runtime.c, scheduler.scm, support.scm, syntax-case.scm, wwchicken:
173        - configure checks for `-export-dynamic" (that was added in the previous CVS release, actually).
174        - syntax-case.scm: added `debug-expand".
175        - csi: prints newline on eof.
176        - easyffi: the prefix pseudo-declaration does not apply to class names; switching the prefix off didn"t work;
177          brackets following an identifier are allowed when types are parsed.
178        - library/optimizer/c-platform: `fp+", and further flonum operations.
179        - c-platform: `eqv?" should work with flonums in fixnum mode.
180        - this is release version 1.66 -------------------------------------------------------------------
181        - runtime.c: flonum-specific numops (`fp+", ...) check their argument type in safe mode.
182        - Default compiler options for icc and gcc use -Os instead of -O3.
183        - syntax-case.scm: uses internal syntax-error procedure.
184        - library.scm: got internal versions of `block-(ref|set!)"
185        - match: handles native and SRFI-9 records, `define-structure" and friends are gone.
186        - csi/match-support: "match-support" feature is properly registered and will not be loaded twice when `match"
187          is required in hygienic mode.
188        - New declaration-specifiers `c-options" and `link-options".
189        - `atom?" is now an optimized extended binding.
190        - batch-driver.scm: fixed bug in invocation of `user-pass-2".
191        - rewriting rule for `##sys#setslot" didn"t check argument count.
192        - runtime.c: `string->number" and `number->string" reported wrong required number of arguments [Thanks to
193          Alejandro Forero Cuervo]
194        - weak symbol hash-table should be slightly better distributed
195        - csc: accepts `-L<dir>" and handles invalid options more gracefully
196        - Runtime-option `-:x" signals uncaught thread-exceptions in primordial thread (is this the right way to
197          handle it?)
198
1992004-08-18  flw  <flw@gurke>
200
201        * syntax-case.scm, wwchicken, README, TODO, batch-driver.scm, build.scm, c-platform.scm, chicken-ffi-macros.scm, chicken.1, chicken.texi, compiler.scm, configure.in, easyffi.l, easyffi.scm, hen.el, posix.scm, psyntax.scm, support.scm:
202        - Added new macros `foreign-parse[/spec]" and read syntaxes `#>$ ... <#" and `#>% ... <#" which allow
203          access to the FFI parser [Suggested by Daniel B. Faken]
204        - The tinyclos unit is not anymore used automatically in parsed C++ code
205        - added `-ffi-custom" option.
206        - easyffi: handles prerprocessor macros nort starting at the first position of a line.
207        - posix.scm: added `file-[access|change]-time" and `file-stat" [Suggested by Peter Bex].
208        - utils.scm: `make-pathname" didn"t remove the leading "/" from the file component, if not needed.
209        - Fixed bug in the generation of an error-messages if non-matching argument-lists of inlined/customized calls
210          had a rest parameter.
211
2122004-08-12  flw  <flw@gurke>
213
214        * README, TODO, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-entry-points.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken-setup.scm, chicken.h, chicken.texi, configure.in, csi.scm, easyffi.l, easyffi.scm, eval.scm, extras.scm, library.scm, lolevel.scm, makefile.dj, makefile.vc, pcre.scm, posix.scm, pregexp.scm, psyntax.scm, regex.scm, runtime.c, support.scm, tcp.scm, wwchicken:
215        - tcp.scm: added missing #define EINPROGRESS for Windows
216        - makefile.vc: still had some occurrences of "graph", where "partition" was needed
217        - csc.scm: fixed bug in handling of "-l..." on Windows
218        - wwchicken: `stream-cgi" is now in web category, `rgraph" needs `srfi-40"
219        - extras.scm: `noop", `atom?"
220        - eval.scm: error messages with a single void argument in addition to the message where
221          printed without the argument; `repl-prompt" holds now a procedure instead of a string
222        - chicken-setup.scm: errors during loading of a setup-script did not output anything
223        - library.scm: added `test-feature?"
224        - easyffi: parser accepts `#" everywhere now; illegal characters are shown in error message;
225          user-defined types are heeded when computing classes with full specialization
226        - "curried" `define" syntax ("(define ((foo x) y) ...)") is supported
227        - `include" preserves line-number counter of reader
228        - regex: `grep" uses `string-search" instead of `string-match" [Thanks to Alejandro Cuervo]
229        - posix: `set-group-id!", `create-session", `process-group-id" and `set-process-group-id!" [suggested by Peter Bex]
230        - lolevel: `pointer=?"
231        - new foreign types `symbol" and `number" [The latter was inspired by Daniel B. Faken]
232        - csi: changed prompt and added `#INDEX"/`#" read syntax for easier handling of the REPL history
233        - eval.scm: reading in a repl swallows any #\newline directly following the input [suggested by Taylor Campbell]
234        - chicken-more-macros.scm: `case-lambda" depends on srfi-1 at expansion time (so it"s loaded)
235          [thanks to Michele Simionato]
236        - changed the prefix for certain "easy" FFI macros from "__" to "___" to avoid collisions with identifiers
237          in C standard headers
238
2392004-08-05  njbeckford  <njbeckford@gurke>
240
241        * chicken-setup.scm:
242        Fixed bug for "chicken-setup xxx.egg".  Previously it would unpack the
243        egg and then go into a recursive loop.  Now it unpacks the egg and
244        runs the embedded setup script.
245
2462004-08-02  flw  <flw@gurke>
247
248        * TODO, c-backend.scm, chicken-entry-points.scm, chicken.texi, compiler.scm, easyffi.scm, eval.scm, extras.scm, support.scm, wwchicken:
249        - fixed instance-ref"s in FFI [Thanks to Petter Egesund]
250        - extras: `rassoc"; fixed buf in `alist-ref"
251        - wwchicken: added some links; categorized eggs
252        - eval: `set-extension-specifier!"
253
2542004-08-01  sven1999  <sven1999@gurke>
255
256        * chicken-setup.scm: fixed typo: cmod should be chmod
257
2582004-07-29  sven1999  <sven1999@gurke>
259
260        * library.scm: added unsafe variants for list->string and list->vector
261
2622004-07-28  flw  <flw@gurke>
263
264        * compiler.scm, configure.in, csi.1, extras.scm, hen.el, lolevel.scm, optimizer.scm, parameters.scm, posix.scm, support.scm, wwchicken, README, TODO, batch-driver.scm, build.scm, c-platform.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken-setup.scm, chicken.texi:
265        - extras: `alist-ref"
266        - compiler: `define-optimizer" (but keep it undocumented)
267        - batch-driver.scm: fixed a bug related to using `user-pass-2"
268        - lolevel: added `record->vector"
269        - posix.scm: added `get-groups", `set-groups!" and `initialize-groups" [Suggested by Peter Bex]
270
2712004-07-20  sven1999  <sven1999@gurke>
272
273        * chicken.texi:
274        removed @code from 1 @node line (causes crash on second run of tex), increased build number from 43 to 62
275
2762004-07-19  flw  <flw@gurke>
277
278        * examples/makefile, srfi-4.scm, support.scm, syntax-case.scm, tcp.scm, tweaks.scm, wwchicken, format.scm, library.scm, lolevel.scm, optimizer.scm, parameters.scm, partition.scm, pcre.scm, posix.scm, profiler.scm, psyntax-bootstrap.scm, regex.scm, runtime.c, scheduler.scm, srfi-13.scm, srfi-18.scm, srfi-25.scm, compiler.scm, configure.in, csi.scm, easyffi.l, easyffi.scm, eval.scm, extras.scm, README, TODO, banner.scm, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-default-entry-points.scm, chicken-entry-points.scm, chicken-ffi-macros.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken-profile.scm, chicken-setup.1, chicken-setup.scm, chicken.h, chicken.scm, chicken.texi:
279        - easyffi: fixed error in parse-error message for unbalanced parens
280        - eval: `set-read-syntax!"
281        - extras: `read-token"
282        - some output routines use faster version of `write-char"
283        - compiler: `export" declaration is able to export toplevel variables from psyntax modules
284        - chicken-setup: some diagnostic output is suppressed in non-verbose mode
285        - wwchicken: fixed a bug related to creating proper timestamps for eggs
286        - c-backend.scm: unsafe marker wasn"t generated when no partitioning was selected
287        - eval.scm: `load" and include-path resolving ignores directory names
288        - visiting files (either explicitly or via `import") does load syntax-extensions, if needed
289        - when special core include files (like `chicken-more-macros.scm") are accessed via `use" or
290          `require-extension", then care is taken to load them only once
291        - easyffi.l: end of input resets pp-mode
292        - `print-error-message" didn"t show location (if provided)
293        - Chicken should now work on amd64 platforms [Thanks to Thomas Weidner and Tollef Fog Heen]
294        - `machine-type": returns "x86-64 on amd64 platforms
295        - chicken-setup: unpacks eggs into a temporary directory; host without port didn"t work; addded
296          `-keep" option
297        - changed snail-mail address in source file headers
298        - easyffi.l: uses `reverse-list->string"
299        - srfi-13: `string-contains-ci" wasn"t implemented; `string-contains[-ci]" had off-by-one error
300          [Thanks to Peter Wang]
301        - tcp.scm: error messages give location (mostly)
302        - tcp.scm: `tcp-connect" doesn"t block other threads [Thanks to Peter Wang]
303
3042004-07-15  njbeckford  <njbeckford@gurke>
305
306        * partition.scm: Changed copyright over to Felix.
307
3082004-07-07  flw  <flw@gurke>
309
310        * csi.scm, partition.scm, posix.scm, support.scm, wwchicken, build.scm, c-platform.scm, chicken.1, chicken.h, chicken.scm, chicken.texi, compiler.scm, configure.in, csc.scm.in, README, TODO, batch-driver.scm:
311        - chicken.h: added missing macro definition for `__discard"
312        - posix: stat routines did not expand tilde
313        - wwchicken: updates egg dates and colors table entries
314        - csi.scm: report was wrong [Thanks to Benedikt Rosenau]
315        - added `-split-level" compiler option [As suggested by Jonah Beckford]
316        - slightly better error checking for compiler options
317        - when processing foreign-declarations in SWIG mode, C syntax checks are disabled
318
3192004-07-06  njbeckford  <njbeckford@gurke>
320
321        * partition.scm: Imported some lambdas to make work in compiled mode.
322
323        * partition.scm: Got rid of most unused methods.
324
325        * partition.scm: Changed unit name to 'partition instead of 'graph.
326
327        * partition.scm, compiler.scm, chicken.texi, chicken.scm, Makefile.am:
328        Changed graph.scm to partition.scm.
329        Fixed bug in partition.scm related to not recalculating all relevant
330        neighbours.
331        Added -debug P, -debug Q and -debug R for the partitioning stuff.
332
3332004-07-06  flw  <flw@gurke>
334
335        * examples/makefile, testsuites/makefile.in, benchmarks/cscbench, optimizer.scm, parameters.scm, posix.scm, runtime.c, support.scm, wwchicken, hen.el, library.scm, makefile.dj, makefile.vc, compiler.scm, configure.in, csc.scm.in, csi.scm, easyffi.l, easyffi.scm, eval.scm, extras.scm, README, TODO, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-ffi-macros.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken-setup.1, chicken-setup.scm, chicken.1, chicken.scm, chicken.texi, FAQ.html, Makefile.am:
336        - `define-record-type" expanded into code that didn"t allow subsequent exported definitions
337          in psyntax module forms [Thanks to Grzegorz Chrupala]
338        - removed some leftover occurrences of `-extra-libs" [Thanks to Sven Hartrumpf]
339        - `define-method" expands into a non-definition, which works better with the psyntax module system
340          [Thanks to Grzegorz Chrupala again]
341        - ",r" command in csi was broken
342        - library: added `memory-statistics"
343        - call/cc called with a known lambda is optimized away in case the continuation-variable is never used
344        - csi: uses `memory-statistics"
345        - fixed some errors in the manual [Thanks to Peter Barabas and Benedikt Rosenau]
346        - Jonah Beckford contributed a partitioning algorithm to the compiler that allows splitting a Scheme
347          file into multiple C files - very cool but still experimental
348        - extras: `conc"
349        - renamed unit `script-utils" to `utils"
350        - csc: handles `-split" properly
351        - compiler prefixes identifiers when generating split files
352        - easyffi: Added `__discard" marker
353
3542004-06-19  flw  <flw@gurke>
355
356        * examples/README, examples/makefile, optimizer.scm, psyntax.scm, wwchicken, eval.scm, library.scm, batch-driver.scm, c-platform.scm, chicken-ffi-macros.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken-setup.1, chicken-setup.scm, chicken.css, chicken.h, chicken.texi, FAQ.html, Makefile.am, README, TODO:
357        - some library files were still not up-to-date with respect to the changed declaration syntax for internal
358          procedures (like FFI stubs or trampolines). This caused gcc 3.4 to choke on tcp (and possibly other files
359          that hadn"t been re-translated for longer) [Thanks to Pierre]
360        - eval.scm: `syntax-error"
361        - the SRFI-22 driver programs (trampolines) have been removed
362        - Makefile.am: added dependency for library.c (build.scm)
363        - chicken-setup: options `-fetch" and `-install-as-root"
364        - `open-output-file": append-mode was completely broken
365        - added css stylesheet for HTML version of manual [Thanks to Johannes Groedem]
366        - added case for amd64 to chicken.h (doesn"t yet run, though) [Thanks to thomas001]
367        - `define-foreign-[type|variable]" didn"t check first argument for being a symbol [thanks to Eric Meritt]
368        - added `use" as an alias for `require-extension"
369        - `command-line-arguments" filters out runtime options (anything starting with "-:")
370        - added another optimizer rule; `thread-specific[-set!]" is inlined in unsafe mode
371        - `print[*]" returns 1st argument
372
3732004-06-13  njbeckford  <njbeckford@gurke>
374
375        * hen.el:
376        Fixed: char table range must be t, charset, char or vector ... using solution at http://list-archive.xemacs.org/xemacs-beta/200310/msg00407.html
377
3782004-06-09  flw  <flw@gurke>
379
380        * wwchicken, support.scm, srfi-13.scm, parameters.scm, library.scm, hen.el, eval.scm, csi.scm, chicken.texi, chicken-more-macros.scm, chicken-config.in, chicken-highlevel-macros.scm, c-platform.scm, batch-driver.scm, README, Makefile.am:
381        - removed all support for SRFI-7
382        - the implementation of SRFI-9 is now much faster (equivalent to `define-record")
383        - fixed srfi-13"s `string-contains[-ci]"
384        - wwchicken generates egg-list and index-page automatically
385
3862004-06-07  flw  <flw@gurke>
387
388        * examples/mmcp.scm, examples/makefile, benchmarks/cscbench, wwchicken, syntax-case.scm, posix.scm, makefile.vc, makefile.dj, hen.el, csi.scm, csc.scm.in, compiler.scm, configure.in, chicken.texi, chicken-setup.scm, chicken-profile.scm, chicken-config.in, c-platform.scm, build.scm, batch-driver.scm, README, TODO, Makefile.am, FAQ.html:
389        - posix.scm: patched `file-mkstemp" [Thanks to Johannes Groedem]
390        - rcsi has been dumped
391        - csi now only uses the library, eval and extras units
392        - `extras" has been added to the list of units used by default in compiled code (this means csi
393          and compiled code have basically access to the same set of definitions)
394        - csc always links safe libs, providing `-unsafe-libraries" always links with unsafe ones (independent
395          of any other setting) [Thanks to Sven Hartrumpf]
396        - chicken-config: removed `-extra-libs" option (`-libs" adds all libraries now)
397        - chicken-setup: attempts to handle the "dll" extension transparently in `make" forms [Thanks to T. Kurt Bond]
398        - `undefine-macro!" and `macro?" work now with highlevel macros
399
4002004-05-30  flw  <flw@gurke>
401
402        * srfi-13.scm, support.scm, runtime.c, posix.scm, library.scm, format.scm, extras.scm, csc.scm.in, chicken.1, chicken.texi, compiler.scm, c-backend.scm, c-platform.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, TODO, batch-driver.scm:
403        - The emitting of the symbol for detecting safe/unsafe library mismatches didn"t work properly [Thanks to Peter Barabas]
404        - posix.scm: `user-information" returns now either a list or #f
405        - `include" accepts any number of arguments [Suggested by Taylor Campbell]
406        - library: added `reverse-list->string" (and removed it from srfi-13) and added some minor optimizations
407          to `[##sys#]substring" [Thanks to Sven Hartrumpf]
408        - posix: added `file-mkstemp" [Contributed by Johannes Groedem]
409        - format, library: uses `reverse-list->string"
410        - library: `read" is now faster [Thanks to Alain Mellon and Clifford Stein]
411        - chicken.texi: fixed some problems with "<" / ">" in HTML output [Thanks to Peter Barabas]
412
4132004-05-27  catfive  <catfive@gurke>
414
415        * wwchicken:
416        - fixed wwchicken manual links for compiler and interpreter command-line format
417
4182004-05-26  flw  <flw@gurke>
419
420        * support.scm, wwchicken, runtime.c, posix.scm, lolevel.scm, makefile.vc, optimizer.scm, hen.el, library.scm, easyffi.scm, eval.scm, csc.scm.in, configure.in, c-platform.scm, chicken-setup.scm, chicken.h, chicken.texi, compiler.scm, README, TODO, build.scm:
421        - makefile.vc: csc.scm.in is copied into csc.scm (or csc.scm wouldn"t be found)
422        - eval.scm: `set!" allows assignments to keywords [Thanks to Mikael]
423        - support.scm, optimizer.scm: inlined lambdas with empty rest list generated invalid code [Thanks Daniel B. Faken]
424        - chicken-setup: doesn"t assume ".so" anymore for compiled extensions, `install-extension" silently
425          handles ".so" extension on Windows [Thanks to T. Kurt Bond]
426        - library.scm: the third argument to `substring" is now optional
427        - csc.scm.in: `-l..." is passed to linker
428        - csc: .i files are passed to swig and passed on to chicken or the C compiler; -swig passes options to SWIG directly
429        - hen.el: added a few kewords for highlighting
430        - runtime.c: removed C_alloc_in_heap, since the continuation can not be saved and will be invalid if GC should occur
431        - compiler: rewriting rules for `string-append" and `substring" in unsafe mode; removed some unneeded variable
432          initialisations from compiler.scm
433        - added `custom-declare" declaration and processing of `.csc" files to compiler/csc for doing weird post-compilation
434          stuff...
435        - easyffi: `typedef ... *ID" is allowed
436        - posix: `user-information" returns 7 * #f, if the user can"t be found [Thanks to Peter Wang]
437
4382004-05-20  flw  <flw@gurke>
439
440        * eval.scm, configure.in, build.scm, chicken-config.in, chicken.texi, README, TODO, Makefile.am:
441        - eval.scm: usage of the CHICKEN_REPOSITORY variable for setting the repository-directory was broken
442          [Thanks to Peter Wang]
443        - removed csc.scm from distro-tarball [Thanks to Daniel B. Faken]
444        - chicken-config used `-Wl,-R" on Mac OS X, which is wrong [Thanks to Houman Zolfaghari]
445        - eval.scm: `require" didn"t check current directory [Thanks to Alain Mellan]
446
4472004-05-19  flw  <flw@gurke>
448
449        * wwchicken, README, chicken-default-entry-points.scm, chicken-setup.scm, chicken.h, chicken.texi, compiler.scm, csi.scm, extras.scm, hen.el, runtime.c:
450        - chicken-setup: `-program-path" does not influence path to chicken tools
451        - runtime.c: added `CHICKEN_is_running()"
452        - extras.scm: fixed bug in `write-string" [Thanks to Alejandro Forero Cuervo]
453        - csi.scm: fixed wrong implementation of `##csi#symbols-matching" [Thanks to Linh Dang]
454        - chicken-default-entry-points.scm: entry-point counter was not adjusted [Thanks to Daniel B. Faken]
455
4562004-05-15  flw  <flw@gurke>
457
458        * tinyclos.scm, wwchicken, pregexp.scm, runtime.c, makefile.vc, parameters.scm, extras.scm, hen.el, library.scm, csc.scm.in, easyffi.scm, eval.scm, compiler.scm, configure.in, chicken.h, chicken.texi, Makefile.am, README, build.scm, chicken-setup.scm:
459        - removed `extension-path", exposed `extension-info"
460        - chicken-setup stores full pathname in info file
461        - renamed `chicken-format-profile" to `chicken-profile"
462        - `import" also searches repository-path
463        - chicken-setup: file-extraction from downloaded files was broken (and several other things)
464        - warnings flush output
465        - added CHICKEN_global_... API
466        - compiler: `require-extension" warns if extension is not currently installed
467        - chicken-setup: automatically adds full path when `run"ning installed chicken programs;
468          verbose mode adds `-v" to csc invocations
469        - fixed two bugs in pregexp.scm [Thanks to Shmul]
470        - easyffi.scm: added `destructor_name" and `exception_handler" pseudo declarations
471        - tinyclos.scm: result-handling of type `(instance ...)" was broken for returned NULL pointers
472        - fixed a few bugs in the Windows build
473
4742004-05-10  flw  <flw@gurke>
475
476        * wwchicken, syntax-case.scm, makefile.vc, eval.scm, configure.in, chicken-setup.1, chicken-setup.scm, chicken.texi, chicken-profile.scm, chicken-profile.1, batch-driver.scm, build.scm, README, Makefile.am, FAQ.html:
477        - removed `extension-path`, exposed `extension-info
478
4792004-05-09  flw  <flw@gurke>
480
481        * parameters.scm, wwchicken, lolevel.scm, makefile.vc, hen.el, eval.scm, csc.scm.in, configure.in, csc.1, chicken.texi, chicken-setup.scm, chicken-setup.1, build.scm, README, Makefile.am:
482        - csc and chicken-format-profile are now executables
483        - added manpage for chicken-format-profile
484        - completely overhauled extension loading mechanism
485        - chicken-setup has been completely rewritten
486        - lolevel.scm: fixed bug in `pointer-f32/64-set!` [Thanks to jemhoff at student dot umass dot edu]
487
4882004-05-05  flw  <flw@gurke>
489
490        * configure.in, csi.scm, eval.scm, extras.scm, hen.el, parameters.scm, support.scm, build.scm, c-backend.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken.texi, compiler.scm, Makefile.am, README, TODO, banner.scm, batch-driver.scm:
491        - #!eof is handled properly by the evaluator and compiler as a literal
492        - `read-line' optimization is disabled on Windows [Thanks to lars Rustemeier]
493        - added `require-extension'
494        - info files are not split, which seems to work better [Thanks to Linh Dang]
495
4962004-05-03  flw  <flw@gurke>
497
498        * FAQ.html, LICENSE, README, README.CVS, chicken.texi, format.txt, tinyclos-examples.scm:
499        moved files from doc directory into base dir
500
501        * library.scm, psyntax.scm, runtime.c, scheduler.scm, wwchicken, Makefile.am, TODO, c-backend.scm, compiler.scm, eval.scm, extras.scm:
502        - `#!eof' reads as end-of-file object, `#!eof' is also the printed reprsentation
503        - removed `package'
504        - scheduler.scm: uses usleep() on Cygwin [Thanks to Feanor]
505        - now uses texinfo format for documentation [Many thanks to Linh Dang for translating the manual]
506        - moved documentation files into base directory
507        - extras.scm: fixed bug in `disjoin' [Thanks to Peter Wang]
508        - library.scm: reader doesn't read `:' as a keyword
509
5102004-04-30  flw  <flw@gurke>
511
512        * wwchicken, syntax-case.scm, runtime.c, library.scm, makefile.vc, match-support.scm, psyntax.scm, eval.scm, extras.scm, TODO, compiler.scm, csi.scm:
513        - match-errors raise (exn match)
514        - syntax errors raise (mostly) (exn syntax)
515        - csi: added hooks for emacs interface [as suggested by Linh Dang]
516        - library: hid namespace/import stuff again
517        - fixed a bug in the manual (foreign-value example was wrong) [Thanks to Taylor Campbell]
518
5192004-04-29  flw  <flw@gurke>
520
521        * parameters.scm, pcre.scm, psyntax-bootstrap.scm, psyntax.scm, runtime.c, srfi-18.scm, syntax-case.scm, build.scm, c-backend.scm, compiler.scm, configure.in, csc.bat, easyffi.l, eval.scm, extras.scm, format.scm, library.scm:
522        - (declare (foreign-parse ...)) didn't properly macroexpand parsed code [Thanks to Matthias Heiler]
523        - fixed another bug in the C syntax checker, related to handling `#include <...>'
524        - runtime.c: added missing C_regparm declarations to please gcc 3.4 [Thanks to Sven Hartrumpf]
525        - library.scm: added a low-level 2-argument string-append (`##sys#string-append') for internal use
526        - eval.scm: added `##sys#do-the-right-thing' in preparation for a generic extension requirement form
527        - bumped version to 1.46
528        - syntax-case: changed generation of unique (module) identifiers slightly
529        - script-utils: added `read-all'
530        - extras: `read-file' accepts a filename, now
531
5322004-04-21  flw  <flw@gurke>
533
534        * support.scm, configure.in, csi.1, csi.scm, easyffi.l, easyffi.scm, eval.scm, format.scm, library.scm, batch-driver.scm, build.scm, c-backend.scm, chicken.1, compiler.scm:
535        - added missing documentation for `export' declaration [Thanks to Terence Brannon]
536        - fixed easyffi parser bug that caused preprocessor-state not to be cleared [Thanks to Feanor]
537        - removed line-number output in ffi-parser errors (which was incorrect anyway)
538        - keyword processing uses internal version of `get-keyword', and keyword-lookup is a bit faster
539        - changed default keyword-style to suffix
540        - chicken-format-profile.bat was built incorrectly
541        - rcsi still has access to all non-standard syntax
542        - C syntax checker didn't handle preprocessor commands properly in certain situations
543        - csc: only links with unsafe libs in benchmark-mode or with `-unsafe-libraries'
544        - Fixed some typos in the documentation [Thanks to z0d and Kim Liu]
545        - C syntax-checks for `foreign-declare' declarations checked each string separatly (which was wrong)
546        - csc: -shared + -embedded doesn't pass `-dynamic' to chicken (otherwise implicit exit handler isn't called)
547        - `format' prints keywords more consistently [Thanks to Alain Mellan]
548
5492004-04-15  flw  <flw@gurke>
550
551        * examples/calendar.scm, c-backend.scm, chicken-setup.1, chicken.h, configure.in, csc.bat, csi.scm, easyffi.l, extras.scm, library.scm, lolevel.scm, makefile.vc, psyntax.scm, runtime.c, scheduler.scm, srfi-18.scm, wwchicken, Makefile.am, TODO, batch-driver.scm, build.scm:
552        - scheduler: added `##sys#thread-unblock!' (and renamed old version to `##sys#thread-basic-unblock!')
553        - extras.scm: added fast path to `read-line' that uses fgets() for FILE* ports
554        - configure.in: -fno-strict-aliasing is now the default for gcc
555        - chicken.h: added missing prototype for C_i_foreign_tagged_pointer_argumentp
556        - Makefile.am: added target for chicken-format-profile
557        - c-backend.scm, runtime.c: loading code dynamically checks now whether the executing runtime and the one linked to the
558          loaded shared object are identical (i.e. have the same safety settings) [Thanks to Category 5 for suggesting a clever solution]
559        - Windows batch files are properly generated (without "#!..." line)
560        - chicken-setup: added `-registry' option
561        - `(define (...) ...)' didn't handle DSSSL keywords correctly with the syntax-case macro system
562        - updated makefile.vc
563        - fixed handling of she-bang line in srfi-7 scripts
564        - fixed bug in FFI C parser [Thanks to Daniel B. Faken]
565
5662004-04-11  flw  <flw@gurke>
567
568        * csi.scm, easyffi.scm, eval.scm, library.scm, lolevel.scm, psyntax.scm, runtime.c, support.scm, wwchicken, TODO, batch-driver.scm, build.scm, c-platform.scm, chicken-ffi-macros.scm, chicken.1, chicken.h, compiler.scm, configure.in, csc.1, csc.bat:
569        - easyffi: checks C syntax of foreign-declare, foreign-[callback-]lambda* and foreign-value/foreign-code
570        - option `-disable-c-syntax-checks'
571        - load-verbose is set to #t when `-:d' is given
572        - csi: features #:csi, #:rcsi
573        - some minor internal helper stuff for tagged pointers
574        - chicken-setup: `+[...]options' didn't work correctly
575        - lolevel: `tag-pointer', `tagged-pointer?' and `pointer-tag'
576        - the reader accepts symbols starting with `#%' and `#!', `#! ...' is only treated as commment
577          when used in the interpreter and it appears on the first line
578        - batch-driver: erroneously added `use' declaration for lolevel unit, when compiling she-bang scripts
579        - syntax `(define VAR)' is allowed now
580        - extended lambda lists (DSSSL style)
581        - `get-keyword' is slightly more relaxed
582
5832004-03-31  flw  <flw@gurke>
584
585        * wwchicken, chicken-match-macros.scm, syntax-case.scm, chicken-ffi-macros.scm, batch-driver.scm, TODO:
586        - syntax-case macro system loads ffi-macros before compilation
587        - fixed bug in expansion of `define-foreign-type'
588        - removed some dependencies of `match' from chicken-ffi-macro.scm
589        - added missing chicken-match-macros.scm and chicken-ffi-macros.scm to CVS [Thanks to Sven Hartrumpf]
590
5912004-03-29  flw  <flw@gurke>
592
593        * TODO, build.scm, chicken-default-entry-points.scm, chicken-entry-points.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken.scm, configure.in, csc.bat, csi.scm, easyffi.scm, examples/calendar.scm, examples/ctclsh.scm, extras.scm, lolevel.scm, syntax-case.scm, tinyclos.scm, wwchicken, Makefile.am:
594        - easyffi: `const' variables are now always accessed by name and are always exported as a normal variable
595        - csc: didn't pass `-static' to the linker, when compiling a static executable
596        - tinyclos.scm: ##tinyclos#compute-std-cpl is now exported to allow fiddling with the MRO
597        - removed URL stuff again
598        - moved FFI macros into separate include file (`chicken-ffi-macros.scm')
599        - renamed all macro definition files by adding `chicken-' prefix (match.scm, entry-points.scm, default-entry-points.scm,
600          highlevel-macros.scm and moremacros.scm)
601        - added `define-foreign-record'
602        - bumped version to 1.42
603        - extras: string-chop
604        - renamed formatprofile to chicken-format-profile
605
6062004-03-26  catfive  <catfive@gurke>
607
608        * wwchicken:
609        small changes to feature list order and manual unit display
610
6112004-03-22  flw  <flw@gurke>
612
613        * configure.in, csc.bat, csi.scm, easyffi.l, easyffi.scm, eval.scm, formatprofile.bat, library.scm, lolevel.scm, makefile.vc, posix.scm, psyntax.scm, runtime.c, support.scm, tcp.scm, wwchicken, Makefile.am, TODO, batch-driver.scm, build.scm, c-backend.scm, chicken-config.in, chicken.h:
614        - csc: added `-W' as an alias for `-windows'
615        - added foreign type specifiers `byte' and `unsigned-byte'
616        - fixed bug in `string>=?' and `string<=?' [Thanks to Sven Hartrumpf]
617        - `require' of a used library unit printed load message even when already loaded
618        - formatprofile.bat will be properly built now
619        - argument-count error-messages print somewhat nicer (slightly)
620        - `tcp-listen' accepts optional argument to restrict receiving IP address
621        - added "tag" specifications to `#> ... <#' syntax
622        - added `#>: ... <#'
623        - script-utils: added URL parsing
624        - the additional paths given via `-ffi-include-path' replaced the default ("."), but should have been be added
625        - rcsi has to use syntax-case unit for SRFI-22 scripts
626        - fixed a few bugs in makefile.vc
627        - added `(exn runtime limit)' and `(exn arity)' conditions
628        - listed some exceptions in the manual (not complete, yet)
629        - added internal hack to allow self-evaluating symbols
630        - bumped version to 1.41
631        - `-Wl,-R...' isn't added to csc anymore and is not used on OS X [Thanks to Category 5]
632
6332004-03-13  flw  <flw@gurke>
634
635        * mingw/Makefile.in, Makefile.am, batch-driver.scm, build.scm, c-backend.scm, chicken.1, chicken.h, compiler.scm, configure.in, csc.1, csi.scm, easyffi.scm, eval.scm, library.scm, makefile.dj, makefile.vc, rcsibatch.bat, runtime.c:
636        - added `rcsi' (a restricted, paired down version of csi), this is also the interpreter invoked by the SRFI-22 trampolines)
637          [suggested by Michele Simionato]
638        - `(define-macro SYMBOL1 SYMBOL2)' is now allowed
639        - added several missing exports to easyffi.scm
640        - added `require-imports', the `-require-imports' option and the `CHICKEN_require_imports()' API
641        - `condition-property-accessor' accepts optional third argument; `print-error-message' handles incomplete comndition
642          objects better
643
6442004-03-08  flw  <flw@gurke>
645
646        * batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-setup.1, chicken.1, chicken.h, compiler.scm, configure.in, csc.bat, csi.scm, easyffi.l, easyffi.scm, eval.scm, library.scm, lolevel.scm, runtime.c, support.scm, test-infrastructure-hygienic.scm, TODO:
647        - lolevel: added `global-make-unbound!' [suggested by Michele Simionato]
648        - runtime-option `-:o' and compiler-option '-disable-stack-overflow-checks'
649        - names of external definitions are checked for being valid C identifiers
650        - `abort' signals condition with 'arguments and 'location properties
651        - support for multiple symbol tables
652        - fixed bug in compiler-handling of `location'
653        - removed all stuff related to `visit'
654        - library: `import'
655        - lolevel: `locative-ref' didn't check argument count
656        - csc: `-cxx' selects alternative C++ compiler; arguments containing "%" are unquoted [suggested by Todd Kueny]
657        - chicken-setup: added a bunch of options to change/add options to the compiler stages; fixed several bugs related to
658          downloading eggs
659        - test-infrastructure: some aliases for output-generation APIs were missing [Thanks to Michele Simionato]
660        - bumped version to 1.38
661
6622004-03-01  flw  <flw@gurke>
663
664        * eval.scm, extras.scm, posix.scm, Makefile.am, TODO, batch-driver.scm, build.scm, c-platform.scm, configure.in, csc.bat, csi.1, csi.scm:
665        - extras: `shuffle' uses `sort!' instead of `sort' [thanks to Sven Hartrumpf]
666        - csc: added `-unsafe-libraries', compiling dynamically loadable file in unsafe mode links now by default with safe libraries
667        - csc, chicken-config: automatically adds `-Wl,R%libdir%' to linker invocation, if using gcc
668        - require accepts lists as pathnames for loading unregistered extensions, so "(require '(a b c))" will be equivalent
669          to `(load "a/b/c")', if no extension is registered under this name
670        - chicken, csc, csi: added `-syntax[-at-run-time]' as alias for `-hygienic[-at-run-time]' [Suggested by Category 5]
671        - chicken-setup: fixed bug in downloading routine
672        - posix: `process' forked one process too many
673        - extras: added `alist-update!'
674        - fixed several LaTeX bugs in the manual
675
6762004-02-24  flw  <flw@gurke>
677
678        * build.scm, chicken-setup.1, chicken.h, compiler.scm, configure.in, extras.scm, library.scm, lolevel.scm, runtime.c, srfi-25.scm:
679        - chicken-setup.in: allowed additional property-list in repository entries, added `-host' option
680        - added `make-weak-locative', `make-locative' returns now a non-weak one
681        - `location' always returns locatives for movable data
682        - added `#$' as an abbreviation for `location'
683        - chicken-setup: `-host' option accepts optional port specification
684        - print-error-message didn't handle condition objects without any message or arguments
685        - added `CHICKEN_[new|delete]_gc_root' and `CHICKEN_gc_root_[ref|set]' for more conveniently handling
686          GC-roots from C code
687        - extras.scm: added `shuffle' [suggested on c.l.s by Michele Simionato]
688        - csc.in: `-c++' implies `-ffi-define __cplusplus'
689
6902004-02-19  flw  <flw@gurke>
691
692        * benchmarks/cscbench, benchmarks/plists, library.scm, runtime.c, support.scm, TODO, batch-driver.scm, chicken.h, easyffi.l, easyffi.scm:
693        - easyffi.scm: `protected' member functions are ignored
694        - added missing `plists' file to benchmarks [Thanks to Sven Hartrumpf]
695        - fixed some references to the old `>>>' prompt in the manual [Thanks to Benedikt Rosenau]
696        - cscbench: added `-I..' to C compiler options [Thanks to Sven Hartrumpf]
697        - chicken-setup.in: supports downloading of eggs
698        - support.scm, batch-driver.scm: `-debug e' lists exported globals
699        - easyffi: added `__specialize' and `__abstract' keywords
700        - chicken.h, runtime.c: added new pointer type for exclusive use by SWIG
701
7022004-02-09  flw  <flw@gurke>
703
704        * benchmarks/boyer.scm, benchmarks/browse.scm, benchmarks/conform.scm, benchmarks/cpstak.scm, benchmarks/cscbench, benchmarks/ctak.scm, benchmarks/dderiv.scm, benchmarks/deriv.scm, benchmarks/destructive.scm, benchmarks/div-iter.scm, benchmarks/div-rec.scm, benchmarks/dynamic.scm, benchmarks/earley.scm, benchmarks/fft.scm, benchmarks/fib.scm, benchmarks/fibc.scm, benchmarks/fprint.scm, benchmarks/fread.scm, benchmarks/hanoi.scm, benchmarks/lattice.scm, benchmarks/maze.scm, benchmarks/nqueens.scm, benchmarks/puzzle.scm, benchmarks/scheme.scm, benchmarks/tak.scm, benchmarks/takl.scm, benchmarks/takr.scm, benchmarks/traverse.scm, benchmarks/travinit.scm, benchmarks/triangl.scm, configure.in, csc.bat, csi.scm, eval.scm, makefile.vc, runtime.c, scheduler.scm, support.scm, syntax-case.scm, Makefile.am, TODO, batch-driver.scm, build.scm, c-platform.scm, chicken.1, chicken.h, chicken.scm, compiler.scm:
705        - removed compiler option `-compile-time-macros-only' and declaration `compile-time-macros-only'
706        - added compiler option '-run-time-macros' and declaration 'run-time-macros'
707        - makefile.vc: removed targets for DLL-libraries (these are not needed)
708        - added benchmarks
709        - `define-embedded' handles string results in a more convenient manner
710        - `define-entry-point' generates more efficient code for single result values
711        - chicken-setup.in: doesn't depend on gnutar anymore [Thanks to TiM]
712        - csc.in: added `-dll' option for generating Windows DLLs
713
7142004-02-05  flw  <flw@gurke>
715
716        * examples/eval-server.scm, Makefile.am, TODO, banner.scm, build.scm, compiler.scm, configure.in, eval.scm, examples/ctclsh.scm, library.scm, syntax-case.scm, tinyclos.scm:
717        - syntax-case.scm: fixed circularity issue in the definition of `quasiquote' [Thanks to Clifford Stein]
718        - eval.scm: local definitions where in certain situations not processed [Thanks to Michele Simionato]
719        - library.scm: `list->vector' didn't handle dotted lists
720        - configure.in: uses -fno-strict-aliasing with gcc 3.3
721        - compiler.scm: detection of argument-count mismatch for customizable procedures didn't check for dotted lambda-lists
722        - tinyclos.scm: calls to methods with a wrong number of arguments crashed
723        - the definition of `define-entry-point' has now been moved to the include file `entry-points.scm'
724        - entry-points.scm: added a new macro for defining named entry-points (`define-embedded')
725        - changed version to 1.34
726
7272004-02-02  flw  <flw@gurke>
728
729        * csi.1, csi.scm, optimizer.scm, runtime.c, compiler.scm, csc.bat:
730        - removed `-slib' option
731        - calls to known procedures generate better error messages if the length of the argument lists don't match
732
7332004-01-29  flw  <flw@gurke>
734
735        * build.scm, configure.in, csi.scm, easyffi.scm, eval.scm, runtime.c, TODO:
736        - runtime.c: printf format strings should generate any warnings [Thanks to Sven Hartrumpf]
737        - easyffi.scm: added `transform' pseudo declaration [Suggested by Daniel Faken]
738        - eval.scm, csi.scm: renamed `read-eval-print-loop' to `repl'
739        - eval.scm: added parameter `repl-prompt' (defaults now to "#;> ", unless it turns out to be a bad idea)
740        - bumped version to 1.33
741
7422004-01-28  flw  <flw@gurke>
743
744        * TODO, build.scm, chicken-setup.1, chicken-setup.scm, chicken.h, configure.in, csi.scm, easyffi.scm, eval.scm, parameters.scm, runtime.c, Makefile.am:
745        - configure.in: checks for stdint.h, if not available: uses sys/types.h [Thanks to Category 5]
746        - easyffi.scm: in fixnum mode, the `int' type is treated as `__fixnum'
747        - runtime.c: dload tries to resolve toplevel function with and without prefix [Thanks to Oskar Schirmer for suggesting this]
748        - runtime.c: `software-type' returns 'unix on Mac OS X
749        - parameters.scm, eval.scm, chicken-setup.scm: different library and shared object extensions to facilitate Mac OS X quirks
750        - easyffi.scm: enum-names are recognized as types and passed as objects of type `(enum NAME)'
751        - csc.in: fixed discrepancy in -help output [Thanks to Sven Hartrumpf]
752        - moved all setup stuff into separate script (`chicken-setup')
753        - easyffi.scm: member definitions outside of class-declarations are ignored
754
7552004-01-19  flw  <flw@gurke>
756
757        * Makefile.am, build.scm, c-platform.scm, chicken.1, chicken.h, chicken.scm, compiler.scm, configure.in, easyffi.scm, eval.scm, library.scm, makefile.vc, runtime.c:
758        - chicken.h: added include for time.h
759        - makefile.vc: upregexp.c wasn't built from pregexp.scm
760        - chicken.scm: lambda-lifting doesn't always work completely reliable, and is now disabled by default
761          (only enabled in benchmark-mode)
762        - runtime.c: GC forwarding-pointers did not work with very large heaps [Thanks to Sven Hartrumpf]
763        - eval.scm, compiler.scm: low-level macros that expand into defining forms in non-toplevel contexts are
764          handled
765          correctly [Thanks to Michele Simionato for pointing out this problem]
766        - easyffi.scm: abstract classes don't get a destructor defined; if in case-insensitive mode, names are
767          downcased
768        - chicken.h: __mips64 compiles in 64-bit mode [Thanks to TiM]
769        - library.scm, c-platform.scm: added `##sys#poke-double' [Thanks to Todd R. Kueny, Sr]
770
7712004-01-14  flw  <flw@gurke>
772
773        * TODO, configure.in, runtime.c, srfi-18.scm:
774        - configure.in: changed test for darwin* to *darwin*
775        - runtime.c: `machine-type' returns 'ia64 on IA64
776        - runtime.c: alignment-hole marking in the garbage collector could run over end of heap-space
777
7782004-01-12  flw  <flw@gurke>
779
780        * srfi-18.scm, TODO, build.scm, chicken.h, configure.in, library.scm, posix.scm, runtime.c:
781        - configure.in: renamed `--enable-mutation-hook' to `--enable-gc-hooks'
782        - runtime.c, chicken.h: added C_gc_trace_hook
783        - library.scm: `current-seconds' returns a flonum, now [Thanks to Alejandro Forero Cuervo]
784        - posix.scm: `file-modification-time' returns a float, other time routines accept floats as seconds
785        - runtime.c, chicken.h, srfi-18.scm: uses floating-point values for time_t seconds
786
7872004-01-07  flw  <flw@gurke>
788
789        * Makefile.am, chicken.h, configure.in, runtime.c:
790        - added C_mutation_hook to runtime.c and `--enable-mutation-hook' configuration option
791
792        * TODO, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-setup.scm, chicken.h, chicken.scm, compiler.scm, configure.in, csi.scm, easyffi.scm, eval.scm, extras.scm, library.scm, lolevel.scm, optimizer.scm, parameters.scm, pcre.scm, posix.scm, profiler.scm, regex.scm, runtime.c, scheduler.scm, srfi-18.scm, srfi-25.scm, srfi-4.scm, support.scm, tcp.scm, tinyclos.scm, tweaks.scm:
793        - extras.scm: `pretty-print' respects record-printers defined with `define-record-printer'
794        - easyffi.scm: regexp-substitution declarations are done in the proper order, and apply to all occurrences
795        - easyffi.scm: method-names were not fixed (name-substituted, etc.)
796        - bumped version to 1.29
797        - updated copyrights to 2004
798        - runtime.c: changed some size-argument related to heap-resizing to unsigned [Thanks to Sven Hartrumpf]
799        - tinyclos.scm: added `<integer>' class
800        - easyffi.scm: added `full_specialization' pseudo declaration
801        - manual.tex: fixed bug in description of `require-at-runtime' [Thanks to Category 5]
802
8032003-12-27  uid67214  <uid67214@gurke>
804
805        * Makefile.am, TODO, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-setup.scm, chicken.h, compiler.scm, configure.in, csc.bat, csi.scm, easyffi.scm, eval.scm, extras.scm, library.scm, lolevel.scm, makefile.dj, makefile.vc, pcre.scm, posix.scm, pregexp.scm, runtime.c, scheduler.scm, srfi-25.scm, srfi-4.scm, support.scm, tinyclos.scm:
806        - Makefile.am: runs `csi -setup' at installation time
807        - added new foreign type specifier `(instance CNAME SCHEMENAME)'
808        - easyffi.scm: C++ object pointers can now be passed/returned transparently as TinyCLOS instances
809        - csc, chicken, csi: accept `--help'
810        - easyffi.scm: `abstract' pseudo declaration; support for function-pointer types
811        - runtime.c: fixed buffer-overflow in low-level file-opening routine [Thanks to Michele Simionato]
812        - srfi-4.scm: #F wasn't properly read in case-sensitive mode
813        - eval.scm: `(begin)' is allowed in bodies
814        - scheduler.scm: uncaught exceptions in child threads trigger warning (if enabled)
815        - library.scm: `(enable-warnings [BOOL])'
816        - srfi-25.scm: some primitives didn't check argument types
817        - library.scm: `print-error-message' accepts optional third argument
818        - library.scm, runtime.c: added `print-backtrace'
819        - chicken-setup.scm: `csi -setup' lists extensions alphabetically
820        - bumped version to 1.28
821        - renamed regex2.scm to pregexp.scm
822        - added pcre.scm, PCRE is used now be default, when available
823        - pregexp.scm, pcre.scm: register extra feature identifiers
824        - configure.in: on Mac OS X, `-L/sw/include' is added to LIBS
825        - runtime.c: "_" prefix is added for OpenBSD + a.out [Thanks to "Category 5"]
826        - compiler: `-explicit-use' prevents tinyclos unit from being used automatically (in easyffi.scm)
827        - csi.scm: report displays regex flavor
828        - extras.scm: added `hash-table-size'
829        - easyffi.scm: `__scheme_value' was converted into wrong type specifier
830        - posix.scm: should now compile under IRIX [Thanks to "Fizzie"]
831        - easyffi.scm: function prototypes with const return types were not correctly parsed
832        - pcre.scm: non-matched capturing subpatterns were not included in the final match-list (as #f)
833        - lolevel.scm: added `object-' prefix to some procedure names
834
8352003-11-26  flw  <flw@gurke>
836
837        * Makefile.am, TODO, build.scm, c-backend.scm, chicken-setup.scm, compiler.scm, configure.in, psyntax.scm, support.scm:
838        - chicken-setup.scm: added `do-chicken-setup'
839        - documented `test-compile'
840        - Makefile.am: removed last remnants of "CPUCONFIGFLAGS" [Thanks to Joerg Wittenberger]
841        - manual.tex: split up all those "Miscellaneous" sections a little
842        - configure.in: added `--with-pregexp' option
843        - highlevel-macros.scm: `foreign-value' wasn't defined properly
844        - support.scm: size-estimation for flonums was wrong
845        - chicken-setup.scm: `csi -setup' lists extension version (if defined); fixed another bug in `chicken-setup' macro
846        - c-backend.scm: fixnum-conversion of FFI calls used hardcoded, 32-bit assuming bitmask [Thanks to "Category 5"]
847
8482003-11-22  flw  <flw@gurke>
849
850        * Makefile.am, TODO, banner.scm, batch-driver.scm, build.scm, chicken-config.in, chicken-setup.scm, compiler.scm, configure.in, csc.bat, easyffi.l, eval.scm, library.scm, optimizer.scm, srfi-4.scm, support.scm:
851        - changed silly banner to something slightly less silly
852        - removed obsolete `##core#qualified'
853        - easyffi.l: didn't parse `!=' and `!`
854        - configure.in: removed -mflat for Sparc options
855        - chicken-setup.scm: improved `test-compile'
856        - optimizer.scm: lambda-lifting was broken for indirectly recursive calls of liftable procedures sometimes
857        - compiler.scm: fixed very very strange error in canonicalization of `##core#foreign-callback-wrapper'
858        - batch-driver.scm: #\# is allowed at file start in non-scripts
859        - chicken-config.in: removed -cppflags
860        - configure.in: add "-no-cpp-precomp -I/sw/include" to CFLAGS on Mac OS X [Thanks to Taylor Campbell]
861        - moremacros.scm/highlevel-macros.scm: added `foreign-value'
862        - eval.scm: error in REPL resets ports to the state before the previous read
863        - srfi-4: added `subXXXvector'
864        - support.scm: `##core#primitive' generated invalid C code with syntax-case macros [Thanks to Joerg Wittenberger]
865
8662003-11-15  flw  <flw@gurke>
867
868        * chicken.scm, compiler.scm, csi.scm, easyffi.scm, eval.scm, extras.scm, optimizer.scm, support.scm, TODO, batch-driver.scm, c-backend.scm, c-platform.scm, chicken-setup.scm:
869        - support.scm: chicken -help doesn't print silly banner
870        - chicken-setup.scm: `test-compile' has been improved
871        - moremacros.scm, highlevel-macros.scm: added `foreign-code' macro
872        - extras.scm: added `pp' as an alias for `pretty-print'
873        - easyffi.scm: `##compiler#foreign-declarations' wasn't exported
874        - csi.scm, support.scm: changed version/silly banner display slightly
875        - added doc/tinyclos-examples.scm
876        - eval.scm: `##core#global-ref' wasn't implemented in the interpreter [Thanks to Michele Simionato]
877
8782003-11-14  flw  <flw@gurke>
879
880        * banner.scm: *** empty log message ***
881
882        * Makefile.am, TODO, chicken.h, compiler.scm, csi.scm, easyffi.l, easyffi.scm, eval.scm, support.scm:
883        - Makefile.am: default-entry-points.scm wasn't put into the list of installed files
884        - chicken.h: all uses of C_toplevel are casted to void *
885        - easyffi.scm: creating TinyCLOS instances from `this' pointers should be a little bit more efficient now
886        - easyffi.scm: added pseudo type `__scheme_value'
887        - eval.scm: added `##sys#void' to scheme-report-environment
888        - compiler.scm: renamed generated C functions from `fNNN' to `f_NNN'
889        - easyffi.scm: parsing class-defs automatically adds `(uses tinyclos)' declaration
890        - added silly banner
891
8922003-11-05  flw  <flw@gurke>
893
894        * easyffi.scm, library.scm, runtime.c, syntax-case.scm, Makefile.am, build.scm, c-backend.scm, chicken-config.in, chicken.h, configure.in:
895        - runtime.c: `parse_argv' is not included, unless really needed [Thanks to Sven Hartrumpf]
896        - csc.in, chicken-config.in, Makefile.am, configure.in: On OS X, '-c++' adds `-no-cpp-precomp'
897          to the g++ compiler flags [Thanks to Taylor Campbell]
898        - chicken.h: includes <alloca.h> on SunOS (always) [Thanks to Sven Hartrumpf]
899        - c-backend.scm: moved generation of callback-prototypes at start of output file
900        - easyffi.scm: fixed unbound variable error in `parse-declaration'
901        - syntax-case.scm: `install-highlevel-macro-system'
902        - chicken.h, runtime.c, default-entry-points.scm: added support for simplified embedding of code
903        - library.scm: fixed off-by-one error in `##sys#register-entry-point'
904        - easyffi.scm: wrapped C++ classes accept optional 'this initializer keyword [Thanks to "Dave"]
905        - script-utils.scm: added `for-each-argv-line' [Thanks to William Annis]
906        - bumped version to 1.23
907
9082003-10-30  sven1999  <sven1999@gurke>
909
910        * testsuites/test-example.scm: removed some typos
911
9122003-10-29  flw  <flw@gurke>
913
914        * makefile.vc, psyntax.scm, runtime.c, support.scm, tinyclos.scm, eval.scm, library.scm, compiler.scm, configure.in, easyffi.scm, c-backend.scm, chicken.h, build.scm:
915        - psyntax.scm, eval.scm: allow `set!' forms with the first arg being an expression
916        - manual.tex: fixed some typos [Thanks to Sven Hartrumpf]
917        - psyntax.scm, eval.scm: added internal support for SRFI-17
918        - easyffi.scm: declaration values are separated via semicolons, added "type" pseudo declaration
919        - makefile.vc: rule for easyffi.l.silex was wrong
920        - runtime.c, chicken.h: added runtime option for heap-size maximum [Thanks to Sven Hartrumpf]
921        - compiler.scm, support.scm: added compiler special form `##core#global-ref'
922        - tinyclos.scm, highlevel-macros.scm, moremacros.scm: TinyCLOS method definitions now are properly handled with hidden/block globals
923        - c-backend.scm: assignment to foreign variables is properly casted to please C++ compilers
924        - easyffi.scm: fixed two bugs related to using __callback in member defs
925        - library.scm: `argc+argv'
926
9272003-10-21  sven1999  <sven1999@gurke>
928
929        * examples/makefile:
930        new example cube needs more C flags to find chicken.h
931
9322003-10-20  flw  <flw@gurke>
933
934        * chicken.h, easyffi.l, easyffi.scm:
935        - easyffi.scm: added pseudo declarations and `struct ID' definition, negative numbers were not recognized
936        - easyffi.scm: bugfix in call to `process-macro-def', pure virtual methods will generate in class without constructor method
937        - easyffi.l: character constants
938
9392003-10-15  flw  <flw@gurke>
940
941        * examples/README, examples/cube.scm, examples/makefile, examples/mandelbrot.scm, examples/schelog-support.scm, csi.1, csi.scm, easyffi.l, easyffi.scm, eval.scm, library.scm, optimizer.scm, runtime.c, support.scm, c-platform.scm, chicken.1, chicken.h, chicken.scm, compiler.scm, configure.in, csc.bat, batch-driver.scm, build.scm, c-backend.scm:
942        - removed `no-winding-callcc' declaration specifier and option
943        - added cube.scm to examples
944        - library.scm: `call/cc', `print-error-message'
945        - eval.scm: `require' didn't handle circular requirements
946        - batch-driver.scm: bails out if input- and output-filename are identical
947        - easyffi.scm: handling of if/else outside of preprocessor contexts, inline, explicit, using, const and pure virtual methods
948        - csc.in, c-platform.scm, batch-driver.scm: -ffi option allows compiling C/C++ for extraction of foreign bindings
949        - c-backend.scm, support.scm: reference, const, enum and template type specifiers
950        - easyffi.scm: template types, better support for fixnum and bool, __callback qualifier, struct/union/enum/reference
951        - csc.in: accepts files with ".h" extension
952        - The reader is now by default case sensitive
953        - `-case-sensitive' -> '-case-insensitive'
954        - bumped version to 1.21
955        - local definitions inside bodies always expand into `letrec' forms, enclosing all subsequent forms
956        - `-strict' didn't always imply `-strict-letrec' (now it does)
957        - added compiler/interpreter option `-r5rs' (is `-hygienic -strict')
958        - regex2.scm: `*pregexp-space-sensitive?*' should have been a variable, not a constant
959        - strict letrec mode was erroneously enabled in non-hygienic mode by the compiler
960        - runtime.c: changed FLONUM_PRINT_PRECISION to 15 [Thanks to "Category 5"]
961        - csc.in: accepts .C, .cc, .cxx and .c++ as C++ source extensions
962
9632003-10-03  flw  <flw@gurke>
964
965        * easyffi.scm, makefile.vc: - easyffi.scm: removed a diagnostic message
966        - makefile.vc: builds extra libraries in gui mode (so that they don't refer to chicken.dll)
967        - csc.in: `-windows' option is back (and works properly)
968
9692003-10-01  flw  <flw@gurke>
970
971        * chicken.h, easyffi.scm:
972        - chicken.h: when compiled with g++, chicken-generated code doesn't use statement expressions [Thanks to Bruce Hoult]
973        - easyffi.scm: added support for static member functions and C++ constants
974
9752003-09-30  flw  <flw@gurke>
976
977        * build.scm, chicken.h, configure.in, easyffi.l, easyffi.scm:
978        - easyffi.scm: prototype bodies may contain code, now
979        - easyffi.scm: `#if' fails always
980        - chicken.h: includes `alloca.h', when compiled as C++, under Solaris, with GCC [Thanks to Bruce Hoult]
981        - changed version to 1.20
982        - easyffi.scm: `volatile', `virtual' and destructor parsing
983        - easyffi.scm: enums and numeric `#define's are converted to constant-definitions
984
9852003-09-29  flw  <flw@gurke>
986
987        * c-platform.scm, chicken-config.in, compiler.scm, configure.in, easyffi.l, easyffi.scm, tinyclos.scm, Makefile.am, batch-driver.scm, c-backend.scm:
988        - csc.in, chicken-config.in, configure.in, Makefile.am: automatically use proper compiler and linker in C++ mode
989        - easyffi.scm: `#include' is now handled
990        - `export' and `hide' declarations are more robust
991        - c-backend.scm: assignments to foreign procedure argument temporaries are casted to please C++ compiler
992        - easyffi.scm: (very) basic C++ support
993        - tinyclos.scm: added builtin class `<c++-object>'
994
9952003-09-27  flw  <flw@gurke>
996
997        * batch-driver.scm, c-backend.scm, c-platform.scm, chicken.1, chicken.h, compiler.scm, easyffi.scm, lolevel.scm, makefile.vc, support.scm:
998        - easyffi.scm: fixed numerous bugs
999        - makefile.vc: can build easyffi.l.silex from source
1000        - easyffi.scm: `static' is allowed for prototypes and variables
1001        - lolevel.scm: MOVE-MEMORY! handles locatives, now
1002        - csc.in: added `-c++' option
1003        - c-backend.scm, chicken.h: fixes to allow compiling generated C code in C++ mode
1004
10052003-09-22  flw  <flw@gurke>
1006
1007        * examples/makefile, Makefile.am, build.scm, chicken.scm, compiler.scm, configure.in, easyffi.l, easyffi.scm, library.scm, makefile.dj, makefile.vc, silex.scm, support.scm:
1008        - library.scm: LIST->STRING could overflow the stack (on Windows) and was rather inefficient in general
1009        - added easyffi
1010        - bumped version to 1.19
1011
10122003-09-10  flw  <flw@gurke>
1013
1014        * configure.in:
1015        - csc.in: removed `-windows' option (didn't really work), added `-D SYMBOL' as synonym for `-feature'
1016          and added special linker option for NetBSD [Thanks to Jun-iochiro itojun Hagino]
1017        - configure.in: gcc-check accepts optional suffix [Thanks to Sven Hartrumpf]
1018        - moremacros.scm, highlevel-macros.scm: `define-generic' accepts optional class
1019
10202003-09-08  flw  <flw@gurke>
1021
1022        * configure.in, eval.scm, posix.scm, support.scm, build.scm:
1023        - csc.in: `-dynamic' is equivalent to `-shared'
1024        - support.scm: `-dynamic' wasn't mentioned in `-help' output
1025        - when using gcc 3.3, add `-Wno-strict-aliasing' option to CFLAGS [Thanks to Johannes Groedem]
1026        - bumped version to 1.18
1027        - posix.scm: `file-lock' mixed up input- and output-ports [Thanks to Johannes Groedem]
1028        - posix.scm: error-handling for file-locking was wrong
1029        - eval.scm: `load' didn't always return void
1030
10312003-09-05  flw  <flw@gurke>
1032
1033        * c-platform.scm, chicken.1, configure.in, extras.scm, library.scm, runtime.c, batch-driver.scm:
1034        - configure.in: fixed version-number
1035        - library.scm: `.' in vector literals caused crash
1036        - manual.tex: fixed a few typos
1037        - library.scm: `(error SYMBOL)' resulted in crash (oh my!)
1038        - csc.in: typo in library-file selection
1039        - csc.in, c-platform.scm, batch-driver.scm: added `-dynamic' option
1040        - runtime.c: there was no check for the heap-size maximum [Thanks to Sven Hartrumpf]
1041        - extras.scm: Sven Hartrumpf suggested a more efficient version of `string-compare3[-ci]'
1042
10432003-08-30  flw  <flw@gurke>
1044
1045        * batch-driver.scm, build.scm, chicken-setup.scm, csc.bat, support.scm:
1046        - added `-quiet' option to chicken-setup
1047        - added `-no-init' option to tex2page invocation line
1048        - `#> ... <#' is now an abbreviation for `(declare (foreign-declare " .,, "))'
1049        - version is now 1.17
1050
10512003-08-25  flw  <flw@gurke>
1052
1053        * library.scm, runtime.c: - csc.in: `-embedded' wasn't recognized
1054        - library.scm: `get-keyword' accepts any object as keys
1055        - runtime.c: `C_callback' doesn't do a minor GC at entry [Thanks to Bruce Hoult]
1056        - `(. ...)' segfaulted instead of giving an error message [Thanks to Category 5]
1057        - `(receive X)' is allowed and returns the list of the result-values
1058
10592003-08-17  flw  <flw@gurke>
1060
1061        * eval.scm, runtime.c:
1062        - fixed big performance leak in minor GC handling: GC-timing stuff for `time'
1063          macro caused way too many kernel calls [Thanks to Bruce Hoult]
1064        - `dump_trace()' didn't initialize output buffer properly
1065
10662003-08-07  flw  <flw@gurke>
1067
1068        * chicken.h, compiler.scm, csc.bat, csi.scm, eval.scm, lolevel.scm, posix.scm, runtime.c, build.scm, chicken-setup.scm:
1069        - eval.scm: `extension-path'
1070        - lolevel.scm: `global-ref', `global-set!' and `global-bound?'
1071        - csc: static libs are reordered to link libchicken last [thanks to Sven Hartrumpf]
1072        - posix.scm: `group-information'
1073        - added index to the manual [thanks to Peter Wang]
1074        - 'loevel was declared as provided by csi (which was wrong)
1075        - removed `define-id-macro' and `let-id-macro'
1076        - setup-specification attributes `test', `test-command' and `test-chicken-version'
1077        - `C_alloc_in_heap()' is called with number of words (not bytes)
1078
10792003-07-30  flw  <flw@gurke>
1080
1081        * extras.scm, optimizer.scm, posix.scm, runtime.c, c-backend.scm, chicken.h, configure.in:
1082        - `csc' added `-s' option to linker, when linking with optimization (won't
1083          work when building shared object)
1084        - fixed countless typos in manual.tex [Thanks to Bruce Mitchener]
1085        - `csc' uses `-bundle' instead of `-shared' under Mac OS X
1086        - runtime.c: dload_2 prefixes dlsym'd name with "_"
1087        - posix.scm: under Mac OS X, `environ' is not used (and `current-environment'
1088          always returns '())
1089        - removed `C_collectibles' and added `C_gc_protect()' and `C_gc_unprotect()'
1090        - fixed compiler bug that caused repeated explicit rest-argument list consing
1091          [Thanks to Sven Hartrumpf]
1092        - added `string-compare3[-ci]'
1093        - reduced C_STACK_RESERVE to 4096; the previous setting could overflow the
1094          stack-check on machines with a stack in very high memory
1095
10962003-07-25  flw  <flw@gurke>
1097
1098        * build.scm, chicken-setup.scm, chicken.h, compiler.scm, csc.bat, csi.scm, eval.scm, posix.scm, runtime.c:
1099        - added `C_end_of_main' macro to chicken.h
1100        - `location' now accepts callback-names
1101        - bumped version to 1.15
1102        - `csc' accepts '-windows' under Cygwin
1103        - chicken-setup.scm/eval.scm: ##sys#load-library-extension is exported (and used)
1104        - the STACKTRACE is printed directly (and not saved in a file)
1105        - `,d' in csi stops after 40 elements when printing sequences
1106        - chicken-setup.scm: fixed hardcoded ".so"
1107        - posix.scm: fixed some routines that weren't updated to the new I/O system
1108
11092003-07-17  flw  <flw@gurke>
1110
1111        * scheduler.scm: - scheduler.scm: fixed bug in `##sys#all-threads'
1112        - scheduler.scm: fixed invalid timeout computation in `##sys#fdset-select-timeout'
1113          [thanks to Peter Wang]
1114
11152003-07-15  flw  <flw@gurke>
1116
1117        * csc.bat, csi.1, eval.scm, library.scm, posix.scm:
1118        - library.scm: vector-resize
1119        - script-utils: for-each-line
1120        - uses newest autotools (libtool 1.5, autoconf 2.57, automake 1.7.6)
1121        - posix.scm: fixed bug in `process-execute' [Thanks to Peter Wang]
1122
11232003-07-07  flw  <flw@gurke>
1124
1125        * chicken.1, csi.scm, support.scm, batch-driver.scm, build.scm, c-platform.scm:
1126        - support.scm: generation of C literals from strings escapes '?' to avoid trigraphs
1127        - added `-slib' option to csc.in and csi.scm
1128        - cleaned up the manual a little
1129        - added `-require-for-syntax' option to `csc'/`chicken'
1130        - added `-windows' option to `csc'
1131        - bumped version to 1.14
1132
11332003-07-03  flw  <flw@gurke>
1134
1135        * Makefile.am, chicken.h, configure.in, runtime.c:
1136        - removed chicken.init from Makefile.am (thanks to Sven Hartrumpf)
1137        - (build-platform) returns 'sun when compiled with the Sun compiler under Solaris
1138        - added Matthias Koeppe's fixes for proper handling of HAVE_CONFIG_H
1139
11402003-07-01  flw  <flw@gurke>
1141
1142        * batch-driver.scm, build.scm, c-platform.scm, chicken.scm, compiler.scm, csi.scm, eval.scm, extras.scm, library.scm, optimizer.scm, regex.scm, runtime.c, srfi-18.scm:
1143        - runtime-system uses internal versions of `require', `provide' and `provided?'
1144        - extras.scm: substring=?, subtring-ci=?, string-translate*
1145        - regex.scm/regex2.scm: string-substitute*
1146        - c-platform.scm: added optimization-rule for `identity'
1147        - during exection of compiler-extensions, the feature-identifier #:compiler-extension is registered
1148        - Chicken now officially supports SRFI-39
1149        - '\xXX' character constants in strings
1150        - srfi-18.scm: `thread-deliver-signal!' [On special request by Joerg Wittenberger]
1151        - `(##sys#fudge 3)' returns #t if running on a 64-bit platform
1152        - removed chicken.init - we will handle this better...
1153
11542003-06-25  flw  <flw@gurke>
1155
1156        * Makefile.am, batch-driver.scm, c-backend.scm, c-platform.scm, chicken-setup.scm, configure.in, extras.scm, optimizer.scm:
1157        - `csi -setup' with an invalid name gives an error [Thanks to Peter Keller]
1158        - `-extend' option was broken [Thanks to Joerg Wittenberger]
1159        - csc.in: on Windows, filenames with drive-designators where interpreted as runtime-options
1160        - csc.in: pathnames passed to cl and link are transformed (#\/ -> #\\)
1161        - on windows, #\\ in pathnames could generate invalid C output in `C_trace()'
1162        - extras.scm: identity, project, conjoin, disjoin
1163        - configure.in: applied patch to link `nanosleep()' under Solaris 7/8 [Thanks to Matthias Koeppe]
1164        - c-platform.scm: added peek-char and char-ready? to side-effecting-standard-bindings
1165        - optimizer.scm: fixed bug in rewriting of certain builtin procedures
1166        - configure.in: check for ldl had a type [Thanks to Matthias Koeppe]
1167        - regex2.scm: wrong feature name for shared compile was used
1168        - removed doc/README.txt and added doc/manual.hdir
1169
11702003-06-19  flw  <flw@gurke>
1171
1172        * build.scm: - Bumped version number to 1.12
1173
11742003-06-14  flw  <flw@gurke>
1175
1176        * Makefile.am, batch-driver.scm, build.scm, c-platform.scm, chicken.h, csi.scm, extras.scm, library.scm, lolevel.scm, posix.scm, runtime.c:
1177        - extras.scm: the first argument to `read-string' is now optional
1178        - runtime.c: interning of empty string referenced uninitialized memory
1179        - posix.scm: I/O on ports returned by `process' is now fully nonblocking
1180        - posix.scm: `errno/wouldblock'
1181        - files loaded via the `-extend' compiler option are also searched in the
1182          current include-path
1183        - `##sys#call-with-direct-continuation' and `##sys#direct-return' (they
1184          might turn out useful)
1185        - lolevel.scm: `unbound-variable-value'
1186        - posix.scm: `file-read' didn't check the buffer argument early enough
1187        - extras.scm: `write-string'
1188        - csi doesn't use the lolevel unit anymore
1189        - `chicken-setup.c' was not up to date
1190        - added BOOTSTRAP_PATH to Makefile.am, this simplifies the invocation
1191          of make when bootstrapping the system from CVS sources
1192          [Thanks to Peter Keller]
1193
11942003-06-06  flw  <flw@gurke>
1195
1196        * library.scm, posix.scm, runtime.c, tcp.scm:
1197        - tcp.scm: tcp-listener-port
1198        - fixed bug in runtime.c that resulted in fopen() being called with invalid file-mode
1199        - tcp.scm: EWOULDBLOCK wasn't defined under Win32 with MSVC
1200        - the printer mixed up "input" and "output" when printing port objects
1201        - fixed bug in read-char handler of pipe-ports
1202        - fixed two unbound variable bugs in library.scm and posix.scm
1203        - commit updates ChangeLog at website and send message to mailing list.
1204          In other words: SMTP and FTP extensions are imminent ;-)
1205
12062003-06-02  flw  <flw@gurke>
1207
1208        * compiler.scm, csi.scm, eval.scm, extras.scm, format.scm, library.scm, lolevel.scm, posix.scm, runtime.c, scheduler.scm, support.scm, tcp.scm, batch-driver.scm, build.scm, chicken.h:
1209        - fixed problem with scheduler.scm (C_msleep) under Windows
1210        - overhauled I/O subsystem
1211        - lolevel.scm: invalid-procedure-call-handler
1212        - declaration `safe-globals'
1213        - internal compiler for `##core#app'
1214        - eval/visit uses `##core#app'
1215        - debug-option `D'
1216        - (hopefully) settled all thread-safety issues in `format.scm'
1217        - nonblocking I/O for tcp-ports
1218        - made `##sys#errno' an int, instead of an integer (library.scm)
1219        - fixed bug in tcp.scm: partial writes to tcp-port didn't remove sent part
1220        - `##sys#thread-block-for-i/o!' for output (or mixed?) mode doesn't work properly (deactived,
1221          does simple polling)
1222
12232003-05-21  flw  <flw@gurke>
1224
1225        * chicken-setup.scm, library.scm, scheduler.scm:
1226        - scheduler.scm: timeout-values in nanoseconds where calculated incorrectly
1227        - chicken-setup.scm: -wrap doesn't create registry, if not existing
1228        - ##sys#special-read-syntax-table
1229        - updated FAQ a little
1230
12312003-05-19  flw  <flw@gurke>
1232
1233        * chicken.h, compiler.scm, eval.scm, posix.scm, runtime.c, scheduler.scm:
1234        - `define-foreign-variable' isn't seen by `visit' anymore
1235        - `C_flonum()' advanced allocation pointer wrongly on 64-bit platforms
1236        - `parameterize' accepts arbitrary expressions in the parameter position of the binding-list
1237        - applied patches by Sven Hartrumpf that remove unneeded special casing for ICC
1238        - constants defined via `define-constant' are visible inside constant-expressions for
1239          that form
1240        - the scheduler doesn't waste CPU cycles when waiting for thread- or I/O-timeout, unless
1241          other threads are ready [Thanks to Chris Double]
1242
12432003-05-08  flw  <flw@gurke>
1244
1245        * support.scm, build.scm, chicken.h, compiler.scm, eval.scm, parameters.scm, posix.scm, runtime.c:
1246        - fixed bug in `process-execute', pointers to potentially gc-moved strings where retained
1247          [thanks to Joerg Wittenberger]
1248        - `define-constant' evaluates 2nd argument at compile time
1249        - fixed bug with mutable constants in `define-constant' forms
1250        - visiting handles `define-foreign-type' and `define-foreign-variable'
1251        - fixed compiler bug in support.scm: `estimate-foreign-result-size' allocated one word too little if flonum result
1252          has to be aligned
1253        - `##core#inline[_allocate]' expanded incorrectly with the hygienic macro system
1254          [Thanks to Panagiotis Vossos]
1255        - fixed 32-bit dependencies: C_FLONUM_TAG was wrong on 64-bit platforms; C_equalp() used `int' where a `C_word'
1256          was needed
1257        - 8-byte alignment was incorrectly handled for 64-bit platforms
1258
12592003-05-04  flw  <flw@gurke>
1260
1261        * library.scm:
1262        - `output-port?' returned 0 on closed port [Thanks to Burton Samograd]
1263
1264        * chicken-setup.scm, chicken.h, compiler.scm, csi.scm, eval.scm, extras.scm, format.scm, library.scm, parameters.scm, posix.scm, runtime.c, srfi-13.scm, support.scm, batch-driver.scm, build.scm:
1265        - `substring' signals (exn bounds)
1266        - replaced several occurences of `substring' with `##sys#substring'
1267        - moved the description of `process' into the proper manual section
1268        - `process' should read non-blocking, now
1269        - buffer grows by doubling it's size in `read-line'
1270        - chicken-setup: defaults options are "-O2 -d0"
1271        - format is thread-safe
1272        - the transcript port wasn't properly recognized as a tty-port
1273        - vector-copy! signals (exn bounds)
1274        - several small optimizations in library.scm
1275        - non-exported globals where still exported, if ref'd before definition
1276        - non-blocking `process' seems to work
1277        - `csi -setup-help' and -uninstall
1278        - `string-null?' is expanded inline
1279        - visit handling constant- and inline-definitions
1280        - `define-constant' wasn't consistently handled in hygienic and non-hygienic mode
1281        - removed procedure-definition syntax for `define-constant'
1282
12832003-04-23  flw  <flw@gurke>
1284
1285        * build.scm, c-backend.scm, chicken-setup.scm, chicken.h, compiler.scm, configure.in, eval.scm, extras.scm, library.scm, lolevel.scm, posix.scm, regex.scm, runtime.c, support.scm:
1286        - hidden globals where not properly checked for boundedness
1287        - the foreign return types `c-pointer' and `pointer' did not return `#f' on NULL results
1288          [thanks to Peter Wang]
1289        - `##sys#void' is handled better by `canonicalize-begin-body' (support.scm)
1290        - fixed space leaks in `regex.scm'
1291        - `read-line' accepts optional limit
1292        - `-setup' gives useful error-message on non-UNIX platforms
1293        - there where two conflicting versions of `provided?'
1294        - chicken-setup handles single-file case
1295        - some warning-options are passed to CFLAGS
1296        - fixed typo in posix.scm [Thanks to Joerg Wittenberger]
1297
12982003-04-19  flw  <flw@gurke>
1299
1300        * runtime.c:
1301        - fixed a couple of 32-bit dependencies [Thanks to Panagiotis Vossos]
1302        - fixed bug in syntax-case version of condition-case
1303
1304        * examples/ctclsh.scm, support.scm, tcp.scm, runtime.c, srfi-25.scm, csi.scm, library.scm, optimizer.scm, psyntax.scm, Makefile.am, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken.1, chicken.scm, compiler.scm:
1305        - fixed bug in c-backend.scm: heap-limit settings [Thanks to Sven Hartrumpf]
1306        - fixed bug in runtime.c: handling of -:t... was bogus [Thanks to Sven]
1307        - the default output-file for `chicken' is now the original-filename (+ ".c") [Thanks to Panagiotis Vossos]
1308        - syntax-case uses `##sys#void' in expansions
1309        - removed `error-handler'
1310        - diversified exceptions a little
1311        - srfi-25: signals more sensible exn types
1312        - added `condition-case'
1313
13142003-04-08  flw  <flw@gurke>
1315
1316        * compiler.scm, eval.scm, examples/prolog.scm, examples/schelog-support.scm, library.scm, match-support.scm, posix.scm, regex.scm, runtime.c, scheduler.scm, srfi-1.scm, srfi-13.scm, srfi-14.scm, srfi-18.scm, srfi-37.scm, srfi-4.scm, syntax-case.scm, tcp.scm:
1317        - eval.scm: `##sys#environment-is-mutable' isn't hidden anymore.
1318        - scheduler.scm: ##sys#fetch-and-clear.
1319        - simplified some code in tcp.scm.
1320        - `(build-platform)' returns 'intel for ICC.
1321        - removed `interrupts-disabled' declaration.
1322
13232003-04-03  flw  <flw@gurke>
1324
1325        * configure.in, runtime.c:
1326        - Changed calls to AC_INIT and AM_INIT_AUTOMAKE in configure.in to new syntax.
1327        - Recreated autotool files using newest versions.
1328
13292003-03-31  flw  <flw@gurke>
1330
1331        * batch-driver.scm, build.scm, c-platform.scm, chicken-setup.scm, chicken.1, compiler.scm, csc.bat, csi.scm, eval.scm, library.scm, posix.scm, support.scm:
1332        - Removed syntax checks from internal `##core#...' forms.
1333        - `require-at-runtime' setup-specification.
1334        - `csi -setup -init' did not install core extensions.
1335        - `seconds->string' (posix.scm) couldn't handle large (but valid) non-fixnum integers
1336          [Thanks to Anthony Carrico]
1337        - `visit' and `-visit' options to csi and chicken.
1338        - `(gc #t)' didn't return number of free bytes.
1339        - `pathname-directory-separator' was #\\ under Cygwin (is now #\/).
1340        - Removed fixnum->flonum coercion warning in reader.
1341
13422003-03-23  njbeckford  <njbeckford@gurke>
1343
1344        * runtime.c: Got rid of buffer overflow in C_get_environment_variable.
1345
13462003-03-22  njbeckford  <njbeckford@gurke>
1347
1348        * Makefile.am:
1349        Undid change that made both MORE_LIBS and MORE_STATIC_LIBS be the same thing.
1350
1351        * Makefile.am:
1352        Made both MORE_LIBS and MORE_STATIC_LIBS be the same thing.
1353
1354        * Makefile.am:
1355        -all-static replaced by -static.  On Solaris, need libdl.so and
1356        libnsl.so since no libdl.a nor libnsl.a.
1357
1358        * Makefile.am:
1359        "make doc" and "make testsuites" now use CHICKEN=../chicken
1360
1361        * Makefile.am: Uses MORE_STATIC_LIBS instead of MORE_LIBS for
1362        lib[xxx_]chicken_la_LDFLAGS so that libtool does not add "-ldl"
1363        whenever something links with lib[xxx-]chicken.la.
1364
1365        * Makefile.am, chicken-config.in, configure.in, runtime.c:
1366        configure.in: Made new variable SHLIBS which has -ldl or -ldld, which will only be used in non -all-static code.
1367        Makefile.am: Use SHLIBS to differentiate MORE_LIBS from MORE_STATIC_LIBS.
1368        runtime.c: Do not even try to use dl.h/dlfcn.h/dlopen/shlopen when in all-static mode.
1369        chicken-config.in, csc.in: Use MORE_STATIC_LIBS (%morestaticlibs%) in static mode.
1370
13712003-03-20  flw  <flw@gurke>
1372
1373        * build.scm, csc.bat:
1374        - `csc' deletes .lib and .exp files if compiling non-shared, non-static on MSVC.
1375        - bumped version number to 1.0.
1376
13772003-03-16  flw  <flw@gurke>
1378
1379        * build.scm, configure.in, csc.bat, eval.scm, parameters.scm:
1380        - "so" was assumed as dynamically loadable file extension (should be "dll" under windows).
1381        - csc passed "/DPIC" to msvc, if compiling without `-static'.
1382
13832003-03-14  flw  <flw@gurke>
1384
1385        * chicken-config.in, csc.bat, library.scm:
1386        - Added `-static' option to csc and chicken-config. Both scripts misused `-shared'
1387          as an indicator for linking with shared libs, but this option should be used
1388          to generate dynamically loadable modules. Default is now to generate dynamically
1389          linked executables. Use `-static' for generating statically linked binaries.
1390        - `[...]' is now allowed in strict-reader mode.
1391
13922003-03-12  flw  <flw@gurke>
1393
1394        * testsuites/test-lolevel.scm, testsuites/makefile.in, Makefile.am, batch-driver.scm, build.scm, chicken-config.in, configure.in, csc.bat, eval.scm, makefile.vc, parameters.scm, runtime.c:
1395        - scheme-chicken-hygienic script interpreter.
1396        - Fixed two bugs in csc.in.
1397        - removed testsuites/test-lolevel.scm.
1398
13992003-03-12  njbeckford  <njbeckford@gurke>
1400
1401        * Makefile.am: Changed "-static" libtool link option to "-all-static".
1402
1403        -all-static: Always choose static libraries where possible, and try to
1404        create a completely statically linked executable.
1405
1406        -static: This switch is similar to `-all-static', except that it
1407        applies to only the uninstalled Libtool libraries in the build
1408        tree. Where possible the static archive from these libraries is used,
1409        but the default linking mode is used for libraries which are already
1410        installed.
1411
1412        -static was causing problems on some people's systems (well, Felix's)
1413        because the default linking mode is shared libraries.
1414
14152003-03-11  njbeckford  <njbeckford@gurke>
1416
1417        * Makefile.am, chicken-config.in, csc.bat, testsuites/makefile.in:
1418        For static linking, always use an absolute form like
1419        /usr/local/lib/libchicken.a instead of -lchicken.
1420
1421        * chicken-config.in:
1422        Condensed multiple lines of output into one.  Was screwing up
1423        SWIG configure script.
1424
14252003-03-10  njbeckford  <njbeckford@gurke>
1426
1427        * compiler.scm: Fixed typo error (fix was by Felix).
1428
1429        * Makefile.am, mingw/Makefile.in, testsuites/makefile.in:
1430        Some fixes to allow MinGW to work as intended.
1431        Especially, changing testsuites to rely on chicken-config for the
1432        compiling and linking options.
1433
1434        * mingw/Makefile.in: Just install csc.bat, not csc
1435
1436        * mingw/configure.sh:
1437        Needed to shift the installation location of the list of command line
1438        arguments to ../configure.
1439
1440        * testsuites/makefile: Deprecated; use makefile.in
1441
1442        * runtime.c:
1443        Changed the order of dload_2 functions so that dlopen/dlsym comes
1444        before LoadLibrary/GetProcAddress.  This means that for Cygwin,
1445        dlopen/dlsym will be used, and Cygwin's checking of LD_LIBRARY_PATH in
1446        addition to PATH will be used.
1447
1448        * chicken-config.in:
1449        The -shared option needs to add -DPIC to compiler flags.
1450
14512003-03-09  njbeckford  <njbeckford@gurke>
1452
1453        * c-backend.scm, chicken.h, csc.bat, makefile.vc, runtime.c:
1454        Changes to allow Microsoft Visual C++ to compile.  All functions in
1455        chicken.h had to have a dllimport/dllexport.  Got rid of C_dllexport
1456        as it was messing up the MSVC compile, but needs to be looked at
1457        further.  Makefile.vc updated to build both static and shared
1458        libraries.  The c-backend was updated so that C_xxx_toplevel was
1459        imported and exported properly on a MSVC build.
1460
14612003-03-08  flw  <flw@gurke>
1462
1463        * Makefile.am, csc.bat, tcp.scm:
1464        - `-strict-reader' doesn't disable `[...]' list syntax.
1465        - Added `tcp-abandon-port' to tcp.scm.
1466        - Makefile.am: the effect USE_POSIX was sometimes reversed.
1467        - csc handles different shared-library file extensions.
1468
14692003-03-04  njbeckford  <njbeckford@gurke>
1470
1471        * Makefile.am, configure.in:
1472        Fixed configure.in and Makefile.am to work with minimum autoconf 2.50, automake 1.4-p3 and libtool 1.3
1473
1474        * runtime.c:
1475        Bug fix for handling of .dll or .so extension for cygwin/mingw.
1476
1477        * Makefile.am: Bug fix for multiple compilation of chicken-setup.
1478
1479        * Makefile.am, chicken-config.in, chicken.h, configure.in, mingw/INSTALL, mingw/Makefile.in, mingw/autogen.sh, mingw/configure.sh, mingw/installdllv.sh, mingw/mingw-cc.sh, mingw/mingw-cxx.sh, runtime.c, testsuites/makefile.in:
1480        Support for MinGW/Cygwin dynamic loading.  MinGW now uses the GNU
1481        autoconf et al. tools.
1482
14832003-03-03  flw  <flw@gurke>
1484
1485        * batch-driver.scm, build.scm, c-platform.scm, chicken.1, configure.in, csc.bat, csi.scm, eval.scm, scheduler.scm, support.scm, syntax-case.scm:
1486        1099:
1487        - Added `-strict-letrec' option to chicken and csi.
1488        - Added `##sys#all-threads' to scheduler.scm [Suggested by Joerg Wittenberger].
1489
14902003-03-02  flw  <flw@gurke>
1491
1492        * csi.scm, examples/README, examples/makefile, examples/tcp-client.scm, examples/tcp-server.scm, extras.scm, library.scm, makefile.vc, scheduler.scm, tcp.scm, testsuites/test-example.scm, tinyclos.scm, Makefile.am, batch-driver.scm, build.scm, chicken-setup.scm, compiler.scm, configure.in, csc.bat:
1493        - The scheduler does a `select()' with infinite timeout, when no other threads are ready or waiting for timeout.
1494        - The predicate returned by `condition-predicate' always returns #t or #f.
1495        - Added tcp to base system.
1496        - Windows batch files were not compiled with uses-declarations for all csi units.
1497        - Removed toplevel command `,x1' in csi.
1498        - Updated FAQ.html.
1499        - Added `-e[mbedded]' to chicken-config and csc.
1500        - `with-(input-from|output-to)-(port|string)' are continuation-safe [Thanks to Joerg Wittenberger and Tony Garnock-Jones].
1501        - Removed `-no-warnings' option from Makefile.am.
1502        - The compiler could not be loaded into csi (missing variable `posix-is-available') [Thanks to Jonah Beckford].
1503        - Fixed some problems in the scheduler [Thanks to Joerg Wittenberger].
1504        - Fixed a bug in examples/makefile which made linking ctclsh fail [Thanks to Sven Hartrumpf].
1505        - Added a fast path in the `dynamic-wind' enabled version of `call-with-current-continuation' that
1506          makes it a little bit faster in case no winding thunks are used [Thanks to Joerg Wittenberger].
1507
15082003-02-25  flw  <flw@gurke>
1509
1510        * chicken.h, configure.in, csc.bat, csi.scm, eval.scm, examples/makefile, examples/tclAppInit.c, library.scm, makefile.dj, makefile.guilibs, makefile.vc, parameters.scm, runtime.c, scheduler.scm, Makefile.am, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-config.in, chicken-setup.scm:
1511        - libchicken is now linked to csi as the last library.
1512        - Fixed problem(s) in makefile.vc.
1513        - Updated manual.
1514        - Compiler emits `main()' entry-point as needed.
1515        - libembedded-chicken isn't needed anymore.
1516        - Renamed `WINDOWS_GUI/_DLL' to `C_WINDOWS_...'.
1517        - `CHICKEN_...' procedures have an additional argument: the toplevel entry point procedure pointer.
1518        - `tex2page' is now distributed with all the other stuff.
1519        - Added `-setup -init' option to csi.
1520        - Alternative registry locations.
1521        - `##sys#thread-block-for-i/o!' doesn't block if other threads are ready or blocked.
1522
15232003-02-18  flw  <flw@gurke>
1524
1525        * parameters.scm, runtime.c, scheduler.scm, srfi-37.scm, support.scm, tinyclos.scm, makefile.dj, makefile.guilibs, makefile.vc, Makefile.am, batch-driver.scm, chicken-setup.scm, configure.in, csc.bat, csi.scm, eval.scm, lolevel.scm:
1526        - Moved scheduler into libchicken (instead of libsrfi-chicken)
1527        - Scheduler fix that is needed for Winsock
1528        - Compiling csi doesn't need ##csi#run prelude anymore
1529        - Added TinyCLOS support for tagged pointers [Thanks to Jonah Beckford]
1530        - runtime.c: fixed bug in values_continuation() (stack-shift shifted one
1531          too many); fixed uninit'd variable bug in C_gc().
1532          Valgrind is incredible!
1533        - File-extension of dynamically loadable files is system dependent.
1534        - Removed serialization stuff. Has to be done better.
1535        - The srfi-37 unit doesn't need regex anymore.
1536        - Renamed Win32 libraries to match UNIX names.
1537        - chicken-setup stuff doesn't print system commands.
1538
15392003-02-11  flw  <flw@gurke>
1540
1541        * examples/prolog.scm, Makefile.am, batch-driver.scm, build.scm, c-platform.scm, chicken-setup.scm, chicken.h, chicken.scm, compiler.scm, configure.in, csi.scm, eval.scm, makefile.dj, makefile.guilibs, makefile.vc, match-support.scm, runtime.c, srfi-37.scm, support.scm:
1542        - removed old module system
1543        - type-checks for fixed-size objects are more efficient
1544        - moved srfi-37 into it's own file
1545        - separated macro-definitions from support code in match.scm
1546        - pattern matcher is now available with highlevel macros
1547        - #!-scripts (csi -script or scheme-chicken) use all units available to the interpreter by default
1548        - type-error message in `locative->object' reported wrong location
1549        - tex2page is now interpreted (simplifies installation)
1550        - manual points now to match.ps at call/cc.org (the old site doesn't seem to be available)
1551
15522003-02-06  flw  <flw@gurke>
1553
1554        * Makefile.am, build.scm, chicken.h, configure.in, library.scm, runtime.c:
1555        - HTML manual wasn't properly generated from CVS version.
1556        - added tagged pointer type.
1557
15582003-01-31  flw  <flw@gurke>
1559
1560        * Makefile.am, compiler.scm, csc.bat, support.scm:
1561        - compressed literals were not written readably into string constant [Thanks to Sven Hartrumpf]
1562
15632003-01-29  flw  <flw@gurke>
1564
1565        * library.scm, scheduler.scm, srfi-18.scm, testsuites/test-example.scm, Makefile.am, build.scm, chicken-config.in, configure.in, csc.bat, csi.scm, extras.scm:
1566        - chicken-config and csc don't mention -I/usr/local/include anymore
1567        - added basic `select()' based scheduling to the threading stuff
1568        - moved port-handler cases for #:write-XXX at start of case [Suggested by Joerg Wittenberger]
1569        - removed call to ##sys#all-threads from csi.scm
1570        - make install generates HTML docs
1571        - csc.1 wasn't installed
1572        - bumped version to 1090
1573
15742003-01-20  flw  <flw@gurke>
1575
1576        * scheduler.scm: - forgot some files (again)
1577
1578        * Makefile.am, batch-driver.scm, csi.scm, library.scm, makefile.dj, makefile.vc, posix.scm, runtime.c, srfi-18.scm, testsuites/makefile, testsuites/test-example.scm, testsuites/test-lolevel.scm, testsuites/test-r5rs.scm, testsuites/test-test-infrastructure.scm:
1579        - definitions in highlevel-macros.scm used `implicit-identifier'
1580          (but it's called now `datum->syntax-object')
1581        - added `scheme-chicken' scriopt interpreter
1582        - compiler knows how to compile scheme-chicken scripts
1583        - put scheduler into own library unit
1584        - removed optional argument from `set-signal-handler!'
1585        - heavily overhauled scheduler
1586        - posix: Ctrl-C now only resets primordial thread
1587        - applied fix to `system' which could cause a buffer overflow [Thanks to Joerg Wittenberger]
1588
15892003-01-15  flw  <flw@gurke>
1590
1591        * Makefile.am, extras.scm, formatprofile.bat, library.scm:
1592        - fixed a bug that caused non-ASCII latin-1 characters to be treated as signed, when retrieved
1593          from a string [Thanks to Sven Hartrumpf]
1594        - `csi -setup' lists installed extensions
1595        - removed the `(number-type flonum)' declaration
1596        - ##sys#pathname-resolution
1597        - added `scheme-chicken' script interpreter
1598        - formatprofile uses `scheme-chicken'; added fix by Joerg
1599        - `make-output-port' accepts optional flush parameter [thanks to Joerg Wittenberger]
1600
16012003-01-11  flw  <flw@gurke>
1602
1603        * testsuites/makefile, testsuites/test-example.scm, build.scm, chicken-setup.scm, chicken.h, compiler.scm, configure.in:
1604        - fixed a bug that caused non-ASCII latin-1 characters to be treated as signed, when retrieved
1605          from a string [Thanks to Sven Hartrumpf]
1606        - `csi -setup' lists installed extensions
1607        - removed the `(number-type flonum)' declaration. It's stupid.
1608
16092003-01-07  flw  <flw@gurke>
1610
1611        * examples/makefile, psyntax.scm, regex.scm, runtime.c, srfi-18.scm, srfi-25.scm, srfi-4.scm, support.scm, syntax-case.scm, tweaks.scm, Makefile.am, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-config.in, chicken-setup.scm, chicken.h, chicken.scm, compiler.scm, configure.in, csc.bat, csi.scm, eval.scm, extras.scm, formatprofile.bat, library.scm, lolevel.scm, optimizer.scm, parameters.scm, posix.scm, profiler.scm:
1612        - chicken-config: `--cc' option [suggested by Sven Hartrumpf]
1613        - some minor changes to `chicken.h' and `runtime.c' related to the
1614          Intel C compiler
1615        - fixed some things in examples/makefile
1616        - added nursery-size check at toplevel entry
1617        - added optional second argument to `compress-literals' declaration
1618          (this is used to move the startup-delay for `syntax-case.scm'
1619          to macro-system installation time)
1620        - `define-inline' and `define-constant' were not correctly handled
1621          under the syntax-case macro system, when interpreted
1622        - fixed bugs in read-line and read-string [Thanks to Joerg Wittenberger]
1623        - changed copyright to 2003
1624        - added pathname-resolution hook
1625        - removed call to string-copy in `make-output-port' [Joerg, again]
1626        - `formatprofile' shows average time per procedure [Joerg, who else]
1627
16282002-12-19  psilord  <psilord@gurke>
1629
1630        * test-infrastructure-hygienic.scm: + Whoo boy. I added lots o' stuff!
1631        + Changed all of the test macros to insert a unique serial number into
1632                each result that can be made. There is a problem with this though,
1633                I need a top level define so this means you can only include this
1634                file ONCE in any given project. This means that you have to end up
1635                compiling your test program with a single compile. No separate
1636                compilation for each file. :( I'm thinking on how to solve this.
1637        + Added the function output-html-simple. It outputs an evaluated result
1638                tree into html. This isn't done quite yet, but it is a large amount of
1639                work and I want it to be safe in the repository. It generates pretty
1640                decent looking html for the output, but I still have stuff to add.
1641        + There is now a statistics function which you can call on a result tree
1642                to calculate all sorts of things about the evluated results, like
1643                how many things passed/failed, and damn near anything else you'd care to
1644                wonder about. This added around 70 calls to the API, but they are simple.
1645                Hmm... I might need to add "how many expectations are in this test case"
1646                kind of information though.... We'll see. Right now, there is plenty
1647                of computed statistics in there that are useful.
1648
16492002-12-17  flw  <flw@gurke>
1650
1651        * Makefile.am, batch-driver.scm, compiler.scm, extras.scm:
1652        - `read-line' should now handle CRLF transparently [Thanks to Joerg Wittenberger]
1653        - removed `extend-csi' and `extend-chicken' scripts
1654        - `let-optionals' and `define-entry-point' are now available under the hygienic macro system
1655        - removed `define-integrable', `define-datatype', `record-case' and `cases'
1656        - `user-post-analyis-pass'
1657
16582002-12-15  psilord  <psilord@gurke>
1659
1660        * test-infrastructure-hygienic.scm:
1661        + Changed the undocumented name of the statistics creator function.
1662        + Added a global unique identifier creation function and subsequent
1663                invocation of it so I can have unique serial numbers for all results.
1664        + I have not yet modified the result object construction code to use the
1665                serial numbers yet, since I need some questions resolved about how
1666                chicken interacts with seperate compilation and (include ...) with
1667                toplevel definitions.
1668
1669        * testsuites/test-lolevel.scm, testsuites/test-r5rs.scm, testsuites/test-test-infrastructure.scm, testsuites/test-example.scm:
1670        + Changed the use of output-style-human to output-style-human-simple.
1671
1672        * test-infrastructure-hygienic.scm:
1673        + Changed the name of the output-style-human API call to
1674                output-style-human-simple.
1675        + Added *-warning? Which checks to see if a warning is active on any kind of
1676                a valid result object.
1677        + Added a statistics system(and subsequent API to be detailed in the manual)
1678                which counts up all sorts of relavant information in a result tree and
1679                plances it into a statistics object which a large API has been built
1680                to manipulate. I'm not fully done with this yet, but it is such a large
1681                amount of detailed work, that I want to check it in to keep it safe. :)
1682
16832002-12-14  flw  <flw@gurke>
1684
1685        * psyntax-bootstrap.scm, psyntax.pp, psyntax.scm:
1686        forgot some files, naturally
1687
16882002-12-13  flw  <flw@gurke>
1689
1690        * Makefile.am, batch-driver.scm, build.scm, c-platform.scm, chicken.1, compiler.scm, configure.in, csc.bat, eval.scm, library.scm, makefile.dj, makefile.guilibs, makefile.vc, parameters.scm, support.scm, syntax-case.scm:
1691        - we now use a more up-to-date version of Chez' portable
1692          syntax-case implementation.
1693        - special compile-handling of `error' accepts now an optional
1694          location as first argument.
1695        - Steve Elkins confirmed successfull build on OpenBSD.
1696        - library units syntax-case and modules are not compiled unsafe
1697          (for libuchicken.*).
1698        - Compiler-option `-compress-literals' and equivalent declaration.
1699        - `(chicken-version)'.
1700
17012002-12-11  psilord  <psilord@gurke>
1702
1703        * test-infrastructure-hygienic.scm:
1704        + Added the macro (side-effect ...) which evaluates a set of arguments in
1705                a (begin ...) form and then returns the ignore-result result. This
1706                allows you to set up complicated situations for expectations where
1707                you might just want to secretly do a lot of work and then perform several
1708                expectations.
1709
17102002-12-09  psilord  <psilord@gurke>
1711
1712        * test-infrastructure-hygienic.scm:
1713        + Changed the name of a few functions that were undocumented, but I wanted to
1714                document them. The names they originally had were not really meaningful.
1715
17162002-12-08  flw  <flw@gurke>
1717
1718        * build.scm, c-backend.scm, c-platform.scm, chicken-setup.scm, chicken.h, configure.in, csi.scm, eval.scm, examples/mandelbrot.scm, lolevel.scm, posix.scm, runtime.c, srfi-1.scm:
1719        - fixed bug in `chicken-setup.scm': the access-check for the
1720          REGISTRY file is now done on the directory.
1721        - srfi-1.scm: `proper-list?' is now an alias for `list?'
1722        - fixed mean bug in a literal-frame allocation handling: pointer
1723          to nursery-allocated symbols, when re-interned and written into
1724          a literal-frame circumvented the write-barrier.
1725          [Thanks to Joerg Wittenberger for providing sample code]
1726        - all places where BSD-specific stuff were used, now check
1727          for Open BSD, too. Additionally, RTLD_GLOBAL is defined as 0.
1728          [Thanks to Steve Elkins]
1729        - removed unused definitions from `examples/mandelbrot.scm'.
1730          [Thanks to Sven Hartrumpf]
1731        - the way `let' was handled in the evaluator limited the number
1732          of bindings to 128 on non-x86 hardware.
1733          [Thanks to Dorai Sitaram]
1734
17352002-12-08  psilord  <psilord@gurke>
1736
1737        * test-infrastructure-hygienic.scm:
1738        + Hid all of the functions I don't want people to use with the prefix
1739                'test:'.
1740        + Need to document some API functions I left for people to use.
1741
17422002-12-07  psilord  <psilord@gurke>
1743
1744        * Makefile.am:
1745        + Added the new test-infrastructure*.scm files to be installed with the
1746                loader file in the place where they get installed. :)
1747
1748        * test-infrastructure-hygienic-local.scm: + Initial revision
1749        + This file will contain any implementation specific testing infrastructure
1750                code you'd like (for example signal handling expectations) written in the
1751                hygienic R5RS macro style. Since it is local to the implementation,
1752                you may use implementation specific code in here.
1753
1754        * test-infrastructure-hygienic.scm:
1755        + The code in this file used to be in test-infrastructure.scm. Please
1756                look there from 1.16 to 1.1 to see the previous history. That file
1757                is now a simple implementation specific loader of the testing
1758                infrastructure code.
1759        + The code was moved into this file to be as portable as possible and it
1760                shall stay as close to R5RS as possible. Any implementation specific
1761                mumbo jumbo you'd like to add to the testing infrastructure (example,
1762                signal handling expectations), you should add into the corresponding
1763                *-local.scm files. Also, the common/base R5RS hygienic macro definition
1764                in this file is considered cannon, and the lowlevel macro implementation
1765                should always follow what is in this file.
1766        + Fixed a bug where printnl was using a non-R5RS function causing a
1767                non-portability problem.
1768        + Fixed a bug where I typoed a function reference for
1769                (terminate-result-result-ref ...)
1770
1771        * test-infrastructure-lowlevel-local.scm: + Initial revision
1772        + This file contains implementation specific test infrastructure code
1773                written using low level macros.
1774
1775        * test-infrastructure.scm:
1776        + moved all code in here into test-infrastructure-hygienic.scm
1777        + this file is now a simple implementation specific loader that loads either
1778                the hygienic or the low level macro version of the test common/base
1779                test-infrastructure code plus the test infrastructure code specific
1780                to this implementation.
1781
1782        * test-infrastructure-lowlevel.scm: + Initial revision
1783        + This file will contain the low level translation of the common/base
1784                hygienic test infrastructure macros.
1785
17862002-12-04  psilord  <psilord@gurke>
1787
1788        * test-infrastructure.scm:
1789        + Updated my copyright to be a bit more clear on something.
1790
17912002-12-02  flw  <flw@gurke>
1792
1793        * Makefile.am, build.scm, chicken-setup.scm, configure.in, csc.bat, csi.scm, extras.scm, formatprofile.bat, lolevel.scm, posix.scm, test-infrastructure.scm:
1794        - `flatten' didn't handle empty lists properly
1795        - location-stuff has own subsection in manual
1796        - Arguments to csc's -C and -L options are split at whitespace
1797        - more pointer operations
1798        - the index argument to `make-locative' is optional
1799        - formatprofile defaults to PROFILE, if no filename is given
1800        - `csi -setup' without further arguments initializes the registry
1801        - chicken-setup: build didn't restore state on failure
1802        - removed non-R5RS stuff from test-infrastructure.scm
1803        - posix.scm: `file-XXXX-access?' was broken
1804        - `csi -setup' tests write-permission for registry directory
1805
18062002-11-25  flw  <flw@gurke>
1807
1808        * chicken-setup.scm, csc.bat, csi.scm, eval.scm, examples/ctclsh.scm, extras.scm, format.scm, library.scm, regex.scm, srfi-18.scm, srfi-25.scm, c-backend.scm:
1809        - removed most of the string-utilities from `extras.scm'
1810        - fixed bug in `make-mutex'
1811        - removed `mutex-owner'
1812        - fixed some unbound-variable errors in several library files
1813        - precompiled regexp's
1814
18152002-11-25  psilord  <psilord@gurke>
1816
1817        * test-infrastructure.scm:
1818        + Wrote a destructor object API to wrap the message passing interface to the
1819                destructor object. I did this to keep it more consistant with the
1820                rest of the test-infrastructure APIs, and also, it now allow sme more
1821                freedom is manipulating the destructor object API and keeping it backwards
1822                compatible. Eventually, I was to be able to specify nicely the
1823                queued function calls so debugging information is much cleaner, and maybe
1824                I want to play with the result type of the destructor object instead
1825                if having it be the ignore type all of the time.
1826        + Recasted the activation of the destructor object to use the new interface.
1827
18282002-11-12  flw  <flw@gurke>
1829
1830        * library.scm, lolevel.scm: - `copy' maintains uniqueness of symbols
1831        - `define-record-printer' works with SRFI-9 records
1832        - fixed bug in `define-record-printer' macro
1833
1834        * batch-driver.scm, build.scm, c-platform.scm, configure.in, csc.bat, csi.scm, library.scm, runtime.c, srfi-18.scm, support.scm:
1835        - fixed bug in `seconds->time' [Thanks to Joerg Wittenberger]
1836        - Added alternative keyword styles
1837
18382002-11-11  psilord  <psilord@gurke>
1839
1840        * Makefile.am:
1841        + c_defaults.h wasn't being generated correctly. It didn't have newlines
1842                where newlines were expected. I fixed it.
1843
18442002-11-09  flw  <flw@gurke>
1845
1846        * Makefile.am, chicken-setup.scm, configure.in, csi.scm, extras.scm, runtime.c, srfi-18.scm, test-infrastructure.scm, testsuites/makefile, testsuites/test-example.scm, testsuites/test-r5rs.scm, testsuites/test-test-infrastructure.scm:
1847        - chicken-setup.scm: `uninstall-extension!' accepts single symbol as argument
1848        - Fixed arity-bug in `string-map' (extras.scm)
1849        - `hash-table->list'
1850        - `make-mutex' wasn't adapted to final SRFI spec [Thanks to Joerg Wittenberger]
1851        - Adapted uses of AC_DEFINE in `configure.in' to new autoconf version
1852
18532002-11-06  psilord  <psilord@gurke>
1854
1855        * test-infrastructure.scm:
1856        + Changed the warning API to reference warnings in the result objects
1857                as it is presented to the user cause the old way was stupid. Now
1858                it is much more consistant.
1859        + Fixed up some comments to be more correct.
1860        + Once I changed the warning API, I had to fix output-style-human to reflect
1861                the new API design. Much better in my opinion....
1862
18632002-10-31  psilord  <psilord@gurke>
1864
1865        * test-infrastructure.scm:
1866        + Added the (skip ...) macro which allows you to skip an expectation, test
1867                package or test case at your leisure.
1868        + fixed up some comments.
1869
18702002-10-30  psilord  <psilord@gurke>
1871
1872        * testsuites/test-r5rs.scm:
1873        + Added the beginnings of chapter 6 from the R5RS handbook. Eventually,
1874                I'll add everything out of it. Mu goal is to implement as much of the
1875                R5RS spec as possible using my test infrastructure.
1876
1877        * test-infrastructure.scm: + Added todo-result and gloss-result.
1878        + todo-result is a message that says something needs to be done.
1879        + gloss-result is strictly information to be processed by the user in
1880                any way desired. Usually it is a string that is printed out explaining
1881                some comments about something that is different than a warning.
1882        + Changed the output-style-human function to output things in a better fashion.
1883        + TODO Need to add the skip macro to be able to skip tests.
1884
18852002-10-29  psilord  <psilord@gurke>
1886
1887        * test-infrastructure.scm: + Added some stuff to my copyright.
1888        + Fixed the debugging output of the output-style-human function so when it
1889                encounters something it doesn't know how to parse, it emits the object
1890                itself in the debug message.
1891
1892        * testsuites/test-r5rs.scm, testsuites/test-test-infrastructure.scm, testsuites/makefile, testsuites/test-example.scm, testsuites/test-lolevel.scm:
1893        + fixed the test suite to use the new world order.
1894
1895        * test-infrastructure.scm:
1896        + Fixed the comments about test-cases and test-packages.
1897        + Removed some defunct code.
1898        + Moved some code around for better organization.
1899
19002002-10-28  flw  <flw@gurke>
1901
1902        * Makefile.am, batch-driver.scm, build.scm, chicken-setup.scm, chicken.h, compiler.scm, configure.in, csc.bat, csi.scm, lolevel.scm, makefile.dj, makefile.vc, runtime.c, srfi-18.scm:
1903        - `current-time' (srfi-18.scm) returns something more useful
1904        - fixed bug in `make-executable-byte-vector' and `make-static-byte-vector':
1905          the allocated block was of insufficient size [Thanks to Peter Keller]
1906        - simplified the use of preprocessor-symbols with respect to `c_defaults.h'
1907        - `-strict[-srfi-0]' didn't work correctly
1908        - `csc.bat' is generated from `csc.in'
1909
19102002-10-28  psilord  <psilord@gurke>
1911
1912        * testsuites/test-example.scm: + Added some comments.
1913
1914        * testsuites/makefile: + Added test-example.scm
1915        + Commented out all tests except for the example test. I need to convert the
1916                other tests into the new world order of the testing infrastructure.
1917
1918        * testsuites/test-example.scm: + initial revision
1919        + A small example of the test-infrastructure code so people can have a
1920                starting point with which to write their own test using the system.
1921
1922        * test-infrastructure.scm:
1923        + Added a simple output-style for human readable output of the result tree.
1924            The modus opreandi for handling a result tree is to write a recursive
1925            analysis procedure to manipulate it in any way you desire. It can
1926            print out output, or calculate percentage failure, or do any other
1927            computation you desire.
1928        + Some Experimetnal API calls exist for the output-style-human function.
1929            I don't know what I'm going to do with those quite yet.
1930        + Added the warning syntax to all of the expectations(except the exception
1931            handling test-cases, I haven't even touched those yet).
1932            XXX I think you need another type to specially handle the exception
1933            results.
1934        + Renamed the escape-result and associated APIs to a terminate result since
1935            that is closer to what it actually means.
1936        + Fixed a lot of busted API calls to deal with the various result types.
1937        + Added a user invoked terminate function which you pass a continuation
1938            escpe fucntion and a message that all gets transformed into a terminate
1939            result type in the test package or test case you are in. You may pass
1940            _any_ escape function in your lexical scope.
1941        + Added an "ignore-result" type which is extremely transient, and not
1942            creatable by a user directly. It is meant to capture the return values
1943            of the destructor object during its use. These are stripped out of the
1944            result trees and are unobservable by the user. Some of the internal
1945            evaluation functions for the cases/packages and expectations
1946            silently process the ignored values and well, ignore them. :)
1947        + Added the warning syntax to the test case and test package macros.
1948        + Fixed it test case/package macros to always activate the destructor object,
1949            strip ignored results, and build termination events when they happen
1950            automatically.
1951        + Got rid of the true/false macros. I didn't like them.
1952        + Whenever you use the destructor, it creates a temporary ignore-result
1953            type which immediatly gets eaten when it comes time to process that
1954            particular result tree. I decided it wasn't in my best interest to
1955            use the #<unspecifed> system here.
1956        + Added my copyright for this code, and a small paragraph explaining that
1957            you can use it for whatever you desire, but my name stays attached to
1958            it.
1959
19602002-10-26  psilord  <psilord@gurke>
1961
1962        * test-infrastructure.scm:
1963        + Totally revamped the escape procedure handling. Now, when an escape
1964                procedure is called, you get an "escape-result" in the
1965                returned tree.  I'm toying with being able to specify
1966                a format you return so that you can give back diagnostic
1967                messages. Already it automatically remembers the context you were
1968                in package/test-case wise, but not expectation-wise(it can't,
1969                in fact--well, it could... and maybe it will some day). I removed
1970                the destructor-result object I had before cause it was dumb and
1971                didn't model the real concept I wanted.
1972        + Added a warning syntax so when you make a test case or a test package
1973                you can(optionally) have it embed a warning object into the
1974                returned result list to be parsed later by the tree analysis
1975                code the user writes.  I need to add this functionality to the
1976                test-package macro(though the underlying support code for that
1977                macro understands it already) and for all of the expectations. The
1978                use of this is to mention things like chicken expects this answer
1979                when the r5rs handbook says to give that answer. Stuff like that.
1980        + Cleaned up some code I fat fingered because I usually write this stuff
1981                at 2am.
1982        + This is still not ready for prime time, but it is comming very close.
1983
19842002-10-25  psilord  <psilord@gurke>
1985
1986        * test-infrastructure.scm:
1987        + fixed a bug in evaled-package-results-true where if it was passed the empty
1988        list it would return true.
1989
1990        * test-infrastructure.scm:
1991        + I've made serious changes to the internals of this code and until I update
1992                the test suites that use this code, they will all break. What I have
1993                currently appears to work and so I'm checking it in so I don't lose it
1994                through mistake or anything like that. The lowlevel macros definitely
1995                need to be redone, and I haven't attempted that yet. To felix, who
1996                is prolly reading this, don't do the conversion yet until I say cause
1997                a few things still need fixing.
1998        + I've made it so that a test package can have multiple test cases or
1999                test-packages inside it ad infinitum.
2000        + Now all tests return a huge tree that represents all of the results
2001                of the tests(along with the unevaluated expectations) and user
2002                supplied information for the tests. This causes a separation of
2003                output generation/analysis with the evaluation of the expectations.
2004                Now you can retarget output generation to be human readable or html
2005                or whatever you want.
2006        + TODO: add new macro definitions for the "warning" style expectations,
2007                packages, and test cases.
2008        + I added a ton of API calls to deal with the generated result tree and the
2009                various result types encapsulated in the tree. All of this, plus how
2010                to use everything needs documentation.
2011
20122002-10-21  flw  <flw@gurke>
2013
2014        * testsuites/test-lolevel.scm, testsuites/test-test-infrastructure.scm:
2015        - added some testing code
2016
2017        * test-infrastructure.scm, testsuites/makefile, Makefile.am, csc.bat, csi.scm, extras.scm, lolevel.scm, runtime.c:
2018        - fixed some escaped characters in verbatim sections of the manual
2019        - ",d <locative>" didn't show anything useful in csi
2020        - `make-locative' didn't accept byte-vectors
2021        - `pretty-print' didn't handle eof-object (and crashed!)
2022        - `(##sys#fudge 16)' returned heavily overflowed values
2023          [Thanks to Joerg Wittenberger]
2024        - made some minor modifications to `test-infrastructure.scm'
2025        - cleaned up the manual
2026        - removed #include of `varargs.h' (pseudo-Solaris fix)
2027
20282002-10-12  flw  <flw@gurke>
2029
2030        * Makefile.am, autocvs, chicken-setup.scm, chicken.spec.in, test-infrastructure.scm, testsuites/makefile, testsuites/test-r5rs.scm:
2031        - added example for `define-external' to manual
2032        - added `-build' stage to chicken-setup
2033        - updated version of autoconf/automake/libtool-generated files
2034        - added test-infrastructure.scm to distribution tarball
2035        - removed acinclude.m4 and stamp.h-in from distribution
2036        - makefile in testsuites compiles and runs all tests
2037
20382002-10-09  flw  <flw@gurke>
2039
2040        * Makefile.am, build.scm, c-backend.scm, c-platform.scm, chicken-setup.1, chicken-setup.scm, chicken.h, compiler.scm, configure.in, eval.scm, library.scm, lolevel.scm, optimizer.scm, posix.scm, runtime.c, support.scm, tinyclos.scm:
2041        - Invocation of `csc' in `chicken-setup' uses full path.
2042        - Foreign procedure accept pointer-like objects were pointers
2043          were previously required (allows locatives as pointer arguments).
2044        - Type-check routines for foreign arguments generate better code.
2045        - Some locative-related routines are inlined.
2046        - An invalid foreign type could crash the compiler.
2047        - Result-size compuation for access to foreign data had some 32-bit
2048          dependencies.
2049        - `define-location' and `let-location', renamed `external-pointer' to `location'.
2050        - Allocation for foreign-results is done in-line.
2051        - Renamed module `ffi' to `chicken-ffi'.
2052
20532002-10-06  psilord  <psilord@gurke>
2054
2055        * testsuites/test-r5rs.scm:
2056        + the test package macros return a vector of results, so I fixed up
2057        the use of the test package that had been implemented.
2058        + Changed the include of the infrastructure to a require of it since it is now
2059        in the distribution proper.
2060
20612002-10-05  psilord  <psilord@gurke>
2062
2063        * Makefile.am:
2064        + Added test-infrastructure.scm into the install procedure so this file
2065                is placed into the correct install place like moremacros.scm is.
2066        + You may now (require 'test-infrastructure) to gain the ability to use this
2067                feature, but you MUST be using hygienic macros.
2068        + As soon as I figure out where to document it, I'll do it.
2069        + I still need to have a lowlevel macro translation of this file so people
2070                can use it without r5rs macros. However, I've barely used lowlevel
2071                macros, so it is going to take a while to perform the port while I
2072                figure everything out.
2073
20742002-10-02  flw  <flw@gurke>
2075
2076        * LICENSE: moved LICENSE into doc directory
2077
2078        * Makefile.am, README, README.CVS, autocvs, runtime.c:
2079        - Fixed bug in heap-resizing routine [Thanks to Benedikt Rosenau]
2080        - Fixed several bugs in the manual [Thanks to Sven Hartrumpf and Benedikt Rosenau]
2081        - Moved some documentation files into doc directory
2082
20832002-09-29  flw  <flw@gurke>
2084
2085        * Makefile.am, README, batch-driver.scm, c-platform.scm, chicken-setup.scm, chicken.h, compiler.scm, configure.in, csc.bat, csi.scm, extras.scm, library.scm, lolevel.scm, runtime.c, srfi-25.scm:
2086        - fixed bug in `csc.bat' (wrong spelling of `library-extension')
2087        - fixed bug in `compiler.scm': `compile-time-macros-only' declaration set
2088          wrong variable
2089        - `chicken-setup --wrap <file>.scm' works without .setup file
2090        - `arithmetic-shift' generates better code with a known second argument
2091        - locatives
2092        - `->string'
2093        - SRFI-26
2094        - `chicken-setup' macro and `-setup' option for csi
2095        - the extension-registry is created automatically
2096
20972002-09-19  surazal  <surazal@gurke>
2098
2099        * chicken-setup.scm:
2100        Ensure that .setup files are canonicalized before output, even where
2101        there was no existing file.
2102
21032002-09-17  flw  <flw@gurke>
2104
2105        * Makefile.am, README, c-platform.scm, chicken-setup.scm, chicken.h, csi.scm, posix.scm, runtime.c, tinyclos.scm:
2106        - `-:r' runtime option
2107        - `##sys#immediate?' and `arithmetic-shift' are rewritten to non-CPS calls
2108        - did some minor tweaks in `tinyclos.scm'
2109        - `C_fix()' used cast to unsigned word
2110        - fixed bug in `quit' procedure in `chicken-setup'
2111        - `posix' wasn't provided by csi
2112        - added `sleep' to `posix.scm'
2113        - added Debian-specific `Makefile.am' [Thanks to Joerg Wittenberger]
2114        - `manual.tex' has updated build-number [Thanks to Sven Hartrumpf]
2115        - fixed bug in `script-utils.scm': a local version of `regex-case' was required
2116          [Thanks to Tony Garnock-Jones]
2117
21182002-09-17  psilord  <psilord@gurke>
2119
2120        * testsuites/test-r5rs.scm:
2121        + Changed include to get infrastructure from toplevel directory
2122
2123        * testsuites/test-r5rs.scm:
2124        initial revision of an R5RS test suite tailored to Chicken
2125
2126        * test-infrastructure.scm:
2127        Initial Revision of part of the test suite code for chicken.
2128
21292002-09-13  flw  <flw@gurke>
2130
2131        * Makefile.am, README, build.scm, c-backend.scm, chicken.h, configure.in, csc.bat, csi.scm, library.scm, makefile.vc, srfi-1.scm, srfi-25.scm, support.scm:
2132        - fixed bug in `srfi-1.scm' [Thanks to Vladimir Tsichevski]
2133        - fixed bug in `support.scm': "nonnull-..." byte-vector types weren't properly handled
2134        - code generated for foreign-callback lambdas uses prefixed names for some
2135          arguments to avoid collisions with user variables
2136        - `csc.bat' treats .lib files like .obj files
2137        - `makefile.vc' is able to bootstrap the system from sources
2138        - fixed minor bug in `Makefile.am': some docs had wrong paths
2139        - fixed bug in `gc': no-argument case invoked wrong GC method
2140        - fixed bug in `csi.scm': `,du' interpreter command crashed on immediate objects [Thanks to Benedikt Rosenau]
2141        - error-location printed wasn't properly qualified
2142
21432002-09-09  flw  <flw@gurke>
2144
2145        * chicken-setup.scm, chicken.1, extras.scm:
2146        - chicken-setup: minor fixes, removed `test-run', added some properties
2147        - added chicken-setup example to manual
2148        - `constantly' accepts multiple arguments
2149        - removed manual.html
2150
21512002-09-05  flw  <flw@gurke>
2152
2153        * chicken-setup.scm, eval.scm: - `require' handles 'file property, now
2154
21552002-09-04  surazal  <surazal@gurke>
2156
2157        * chicken-setup.scm:
2158        Base the .so name in chicken-setup on the (file) attribute, rather than
2159        the name of the package
2160
21612002-09-04  flw  <flw@gurke>
2162
2163        * chicken-setup.scm, tinyclos.scm: - more chicken-setup fixes
2164
21652002-09-04  surazal  <surazal@gurke>
2166
2167        * chicken-setup.scm: Change test-compile:
2168        - support #:cflags <list> (default ())
2169        - support #:ldflags <list> (default ())
2170        - support #:compile-only <boolean> (default #f)
2171
2172        * chicken-setup.scm: Remove offending tilde.
2173
21742002-09-03  flw  <flw@gurke>
2175
2176        * Makefile.am, README, chicken-setup.scm, csc.bat, csi.scm, library.scm:
2177        - #:srfi-30 wasn't properly registered
2178        - several fixes in `chicken-setup.in'
2179        - added setup-property `when'; `make' now allows an arbitrary expression
2180        - `chicken-setup' is now compiled to a binary
2181
21822002-09-02  flw  <flw@gurke>
2183
2184        * Makefile.am, eval.scm, library.scm, support.scm:
2185        - stacktrace/runtime error message shows offending source file
2186        - removed `regex-case' (will be put into extension library)
2187        - fixed problem in `Makefile.am': manual pages weren't found (moved them back into toplevel dir)
2188        - added feature-id for SRFI-30
2189        - fixed bug in handling of `--define' option in `chicken-setup.in'
2190        - fixed another problem in `chicken-setup.in' related to core-extensions
2191        - 'open-[input|output]-file' didn't show location in error-message
2192
21932002-08-31  flw  <flw@gurke>
2194
2195        * compiler.scm, eval.scm, extras.scm, optimizer.scm, runtime.c:
2196        - fixed bug in runtime.c (`C_set_host_data')
2197        - unexported, unused globals in files with an `export' declaration weren't removed
2198        - `csc' passed `-feature chicken-compile-shared' instead of `-feature csc-compile-shared'
2199        - `(random 0)' resulted in div-by-zero
2200        - added `compile-time-macros-only' declaration
2201        - error in macro-expansion shows macro
2202        - chicken-setup: several changes - should now work better with macros at extension build-time
2203
22042002-08-30  surazal  <surazal@gurke>
2205
2206        * Makefile.am: Unstomp quoting fixes :-)
2207
22082002-08-27  flw  <flw@gurke>
2209
2210        * README, build.scm, c-platform.scm, chicken.h, configure.in, csi.scm, eval.scm, extras.scm, library.scm, lolevel.scm, posix.scm, regex.scm, runtime.c, srfi-1.scm, srfi-13.scm, srfi-14.scm, srfi-18.scm, srfi-4.scm, support.scm, syntax-case.scm:
2211        - fixed bug in statistics-code (`-debug s') [Thanks to Benedikt Rosenau]
2212        - improved error-messages (location is shown more often)
2213        - fixed bug in `define-entry-point'
2214        - chicken-setup: repeated compile checks file-modification time
2215
22162002-08-25  flw  <flw@gurke>
2217
2218        * FAQ.html, Makefile.am, chicken-config.in, format.txt:
2219        - added separate `doc' directory
2220
22212002-08-24  flw  <flw@gurke>
2222
2223        * Makefile.am, chicken.h, compiler.scm, csi.scm, eval.scm, examples/mandelbrot.scm, extras.scm, library.scm, lolevel.scm, posix.scm, regex.scm, runtime.c, srfi-1.scm, srfi-13.scm, srfi-14.scm, srfi-18.scm, srfi-25.scm, srfi-4.scm, tinyclos.scm:
2224        - fixes some errors in `moremacros.scm' and `chicken-setup.in'.
2225        - removed `define-foreign-parameter'
2226        - added `manual.tex'
2227        - better error-messages
2228
22292002-08-24  surazal  <surazal@gurke>
2230
2231        * Makefile.am, chicken-config.in:
2232        Add an extra layer of quoting so that our CFLAGS get passed through
2233        the various programs properly.
2234
22352002-08-17  flw  <flw@gurke>
2236
2237        * csc.bat: - fixed minor bug in `csc.in'/`csc.bat'
2238
22392002-08-16  flw  <flw@gurke>
2240
2241        * Makefile.am, autocvs, chicken.scm, csc.bat, eval.scm:
2242        - csc: options `-X' and `-H2'
2243        - autocvs: no generation of README.txt and ChangeLog
2244        - fixed some REGISTRY-related bugs
2245
22462002-08-16  surazal  <surazal@gurke>
2247
2248        * autocvs:
2249        Copy, rather than symlink, mkinstalldirs/install-sh/missing etc
2250
22512002-08-15  surazal  <surazal@gurke>
2252
2253        * configure.in: Added check for -ldld for HPUX shl_load.
2254
2255        * autocvs: Autogenerate README.txt from README when you run autocvs.
2256        It's either that, or have an empty README.txt (touch README.txt) or remove
2257        README.txt from DOCFILES in Makefile.am. Or something else :-)
2258
22592002-08-14  flw  <flw@gurke>
2260
2261        * Makefile.am, README, build.scm, configure.in, csi.scm, eval.scm, lolevel.scm:
2262        - Makefile.am should be pmake-ready, now
2263        - Added `--init' to `chicken-setup'
2264        - `require' should now worl properly
2265
22662002-08-14  surazal  <surazal@gurke>
2267
2268        * configure.in, runtime.c:
2269        Use shl_load/shl_findsym on HP-UX instead of dlopen/dlsym.
2270
22712002-08-13  flw  <flw@gurke>
2272
2273        * chicken-setup.1: - added `REGISTRY' and `chicken-setup.1'
2274
2275        * FAQ.html, Makefile.am, README, c-platform.scm, chicken-config.in, csi.scm, eval.scm, library.scm, makefile.dj, makefile.vc, parameters.scm:
2276        - `require' and friends have been revamped
2277        - Fixed bug in `csi.scm': `untrace' referenced hidden variable `##sys#delq'
2278          [Thanks to Panagiotis Vossos]
2279        - Fixed bug in `c-platforms.scm': rewriting rule for `gc' has been removed
2280
22812002-08-12  surazal  <surazal@gurke>
2282
2283        * Makefile.am, autocvs:
2284        Remove README.txt from DOCFILES in Makefile.am; touch ChangeLog in autocvs
2285
22862002-08-09  flw  <flw@gurke>
2287
2288        * csi.scm, library.scm, srfi-18.scm: - `(gc #t) forces finalizers.
2289        - Documented `hash-table-remove!'
2290        - Time-related stuff in `srfi-18.scm' uses wall-clock time instead of
2291          CPU time
2292
22932002-08-09  surazal  <surazal@gurke>
2294
2295        * extras.scm: Added hash-table-remove!.
2296
22972002-08-06  surazal  <surazal@gurke>
2298
2299        * README.CVS: Restore README.CVS from v1.2
2300
23012002-08-05  flw  <flw@gurke>
2302
2303        * README, README.CVS, batch-driver.scm, build.scm, chicken-config.in, compiler.scm, configure.in, csc.bat, csi.scm, extras.scm, optimizer.scm, posix.scm, srfi-1.scm, support.scm:
2304        some bugfixes, some enhancments, `export' declaration
2305
23062002-08-04  surazal  <surazal@gurke>
2307
2308        * autocvs:
2309        Mention libtoolize explicitly when running autoconf/automake/etc to
2310        avoid warnings. (Panagiotis Vossos)
2311
2312        * Makefile.am, chicken-config.in:
2313        chicken-config now supports "-prefix" argument.
2314
23152002-08-01  surazal  <surazal@gurke>
2316
2317        * README.CVS: Spell out multi-stage bootstrap procedure.
2318
2319        * README.CVS: Initial commit of CVS Chicken bootstrapping instructions.
2320
2321        * batch-driver.scm, c-platform.scm, chicken.1, compiler.scm, support.scm:
2322        (felix) Real-name-table and Line-number-database added
2323
2324        * README, build.scm, configure.in:
2325        (felix) Version number bumped to 1072.
2326
2327        * examples/tclAppInit.c: RCS Id keyword removed.
2328
2329        * FAQ.html, INSTALL, LICENSE, Makefile.am, README, autocvs, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-config.1, chicken-config.in, chicken.1, chicken.h, chicken.ico, chicken.rc, chicken.scm, chicken.spec.in, compiler.scm, configure.in, csc.1, csc.bat, csi.1, csi.scm, csibatch.bat, eval.scm, examples/README, examples/calendar.scm, examples/ctclsh.scm, examples/eval-client.c, examples/eval-server.scm, examples/hellowin.scm, examples/makefile, examples/makefile.vc, examples/mandelbrot.scm, examples/mmcp.scm, examples/nqueens.prolog, examples/prolog.scm, examples/schelog-macros.scm, examples/schelog-support.scm, examples/tclAppInit.c, examples/x11cplot.c, examples/x11cplot.h, extras.scm, format.scm, format.txt, formatprofile.bat, library.scm, lolevel.scm, makefile.dj, makefile.guilibs, makefile.vc, nsample.scm, optimizer.scm, parameters.scm, posix.scm, profiler.scm, regex.scm, runtime.c, srfi-1.scm, srfi-13-syntax.scm, srfi-13.scm, srfi-14.scm, srfi-18.scm, srfi-25.scm, srfi-4.scm, support.scm, syntax-case.scm, tinyclos.scm, tweaks.scm:
2330        Initial commit: 1071 + partway toward 1072 + cleanup + removed .c files
2331
Note: See TracBrowser for help on using the repository browser.