1 2005-01-28 Kevin Ryde <user42@zip.com.au>
3 * srfi-1.scm (lset=): Correction to pred call arg order, srfi spec is
4 (= e[i] e[i+1]), but had some calls the other way around.
6 2005-01-24 Kevin Ryde <user42@zip.com.au>
8 * srfi-1.c (scm_srfi1_member): Correction to pred call arg order, srfi
9 spec is (PRED X elem). Update docstring from manual.
11 * srfi-1.scm (lset=): Allow no list arguments, per srfi spec example.
13 2005-01-18 Kevin Ryde <user42@zip.com.au>
15 * srfi-1.scm: Remove (ice-9 session) and (ice-9 receive), not used.
17 2005-01-12 Kevin Ryde <user42@zip.com.au>
19 * srfi-39.scm (current-input-port, current-output-port): Parameter
20 replacements for core functions, per SRFI spec.
21 (current-error-port): The same, for consistency.
23 2005-01-10 Marius Vollmer <mvo@zagadka.de>
25 * srfi-1.c (check_args): Bugfix to change from 2005-01-02: ARGV is
26 the vector to check, not ARGS.
28 2005-01-02 Marius Vollmer <mvo@zagadka.de>
30 * srfi-1.c: Use new vector elements API or simple vector API, as
33 2005-01-02 Kevin Ryde <user42@zip.com.au>
35 * Makefile.am (srfi_DATA): Add srfi-39.scm.
37 2004-12-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
39 * README: Update, document available SRFIs.
41 2004-12-06 Kevin Ryde <user42@zip.com.au>
43 * srfi-1.scm (alist-copy, alist-delete, break, span): Change to
46 * srfi-1.scm (alist-delete): Correction to equality proc call argument
47 order, spec is for given KEY param first.
49 2004-12-05 Kevin Ryde <user42@zip.com.au>
51 * srfi-1.scm (filter-map): Change to a tail-recursive form.
52 (append-map, append-map!): Rewrite as simple "concatenate map" forms,
53 for tail recursiveness.
55 2004-10-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
57 * srfi-4.scm, srfi-4.h, srfi-4.c: Moved content into core; only
58 the skeletons remains.
60 2004-10-22 Marius Vollmer <marius.vollmer@uni-dortmund.de>
62 * srfi-4.c (print_int64, print_uint64): Removed.
63 (uvec_print): Use scm_intprint for signed elemets and
64 scm_uintprint for unsigned ones. Do not use print_int64 and
65 print_uint64 since scm_intprint and scm_Uintprint can handle 64
68 2004-09-03 Stefan Jahn <stefan@lkcc.org>
70 * srfi-1.c, srfi-1.h: Renamed any 'lst1' into 'list1' because
71 lst1 is a #define on Win32 systems.
73 2004-08-26 Kevin Ryde <user42@zip.com.au>
75 * srfi-31.scm (rec): Add missing `error' to else clause.
77 2004-08-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
79 * Makefile.am: Added appropriate @LIBGUILE_*_MAJOR@ substitutions
81 * srfi-1.scm, srfi-4.scm: Use the new library names with
84 2004-08-25 Marius Vollmer <mvo@zagadka.de>
86 SRFI-13 and SRFI-14 have been moved into the core.
88 * srfi-13.scm, srfi-14.scm: Simply re-export the relevant
91 * srfi-13.h, srfi-13.c, srfi-14.h, srfi-14.c: Removed all real
92 content except for the init functions.
94 2004-08-19 Marius Vollmer <marius.vollmer@uni-dortmund.de>
96 * srfi-13.h, srfi-13.c: (scm_substring_shared): Renamed to
97 scm_substring_sharedS.
99 * srfi-14.c, srfi-13.c: Adapted to new internal string and symbol
102 * srfi-13.scm (substring/shared): Export as replacement since we
103 now have a version in the core.
105 2004-08-15 Marius Vollmer <mvo@zagadka.de>
107 * srfi-39.scm: New, from Jose A Ortega Ruiz. Thanks!
109 2004-08-14 Kevin Ryde <user42@zip.com.au>
111 * srfi-13.c (scm_string_any, scm_string_every): Add support for char
112 and charset as predicates, per SRFI-13 spec.
114 2004-08-12 Marius Vollmer <marius.vollmer@uni-dortmund.de>
116 * srfi-13.c (MY_VALIDATE_SUBSTRING_SPEC_COPY,
117 MY_VALIDATE_STRING_COPY): Modernized clones of the deprecated
118 validation macros. Replaced every use.
120 2004-08-05 Kevin Ryde <user42@zip.com.au>
122 * srfi-13.c (scm_string_any, scm_string_every): Enhance docstrings as
123 per doc/ref/srfi-modules.texi.
125 2004-08-02 Marius Vollmer <marius.vollmer@uni-dortmund.de>
127 * srfi-4.c: Replaced scm_num2* and scm_*2num with scm_to_* and
128 scm_from_*, respectively.
129 (print_int64, print_uint64): Rewritten by just calling scm_iprin1
132 2004-08-02 Kevin Ryde <user42@zip.com.au>
134 * srfi-13.c (scm_string_every): Correction to initial "res" value,
135 return should be #t for an empty string. Reported by Andreas Vögele.
137 2004-07-10 Marius Vollmer <marius.vollmer@uni-dortmund.de>
139 * srfi-13.c, srfi-14.c, srfi-4.c: Changed all uses of
140 SCM_VALIDATE_INUM, SCM_VALIDATE_INUM_COPY, SCM_VALIDATE_BIGINT,
141 SCM_VALIDATE_INUM_MIN, SCM_VALIDATE_INUM_MIN_COPY,
142 SCM_VALIDATE_INUM_MIN_DEF_COPY,SCM_VALIDATE_INUM_DEF,
143 SCM_VALIDATE_INUM_DEF_COPY, SCM_VALIDATE_INUM_RANGE,
144 SCM_VALIDATE_INUM_RANGE_COPY to scm_to_size_t or similar.
146 2004-07-06 Marius Vollmer <marius.vollmer@uni-dortmund.de>
148 * srfi-1.c, srfi-13.c, srfi-14.c, srfi-4.c: Replaced all uses of
149 deprecated SCM_FALSEP, SCM_NFALSEP, SCM_BOOL, SCM_NEGATE_BOOL, and
150 SCM_BOOLP with scm_is_false, scm_is_true, scm_from_bool, and
151 scm_is_bool, respectively.
153 2004-07-05 Kevin Ryde <user42@zip.com.au>
155 * srfi-4.c (uvec_sizes): Add "const".
157 * srfi-31.scm: Correction to heading comment.
159 2004-06-20 Rob Browning <rlb@defaultvalue.org>
161 * srfi-4.c: fix #ifdef checks for 64-bit types; should be #if.
162 Add separate symmetric test for SCM_HAVE_T_UINT64 in one case.
163 (uvec_print): rewrite using a union to make more
164 compact, and use static print_uint64 and print_int64 to print
166 (print_int64): new static function (temporary fix).
167 (print_uint64): new static function (temporary fix).
169 * Makefile.am (srfi_DATA): add srfi-31.scm.
171 * srfi-31.scm: new file.
173 2004-04-24 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
175 * srfi-17.scm (setter, car, cdr etc.): When within one define
176 expression a new variable in the local module is defined in terms
177 of an equally named variable from some other module, use @ to
178 refer to the variable in the other module. This is necessary due
179 to section 5.2.1 of R5RS: In a define expression first the new
180 binding is created and then the expression is evaluated.
182 2004-04-24 Kevin Ryde <user42@zip.com.au>
184 * srfi-11.scm (let-values): Use make-symbol rather than gensym, for
185 guaranteed uniqueness of temp variable symbols.
187 2004-04-15 Kevin Ryde <user42@zip.com.au>
189 * srfi-13.c (scm_string_trim, scm_string_trim_right,
190 scm_string_trim_both): Cast to unsigned char for isspace.
192 2004-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
194 * srfi-13.c (s_scm_string_map): convert character to unsigned char
195 before converting to unsigned int. This prevents hi-bit ascii as
196 being converted large integers.
197 (string_upcase_x): change caller for scm_{up,down}case to
200 2004-03-23 Kevin Ryde <user42@zip.com.au>
202 * srfi-1.scm (circular-list): Rewrite using set-cdr!, no need to copy
205 2004-02-08 Mikael Djurfeldt <djurfeldt@nada.kth.se>
207 * Makefile.am (TAGS_FILES): Use this variable instead of
208 ETAGS_ARGS so that TAGS can be built using separate build
211 2004-01-24 Marius Vollmer <mvo@zagadka.de>
213 * Makefile.am (srfi_DATA): Added srfi-26.scm.
215 2004-01-21 Marius Vollmer <m.vollmer@ping.de>
217 * srfi-26.scm: New, from Daniel Skarda. Thanks!
219 2003-12-03 Kevin Ryde <user42@zip.com.au>
221 * srfi-1.c, srfi-1.h, srfi-1.scm (count): Rewrite in C, avoiding
224 * srfi-1.scm (map!): Define as an alias for map, previous definition
225 was not tail-recursive.
227 2003-08-23 Kevin Ryde <user42@zip.com.au>
229 * srfi-1.c, srfi-1.h, srfi-1.scm (list-copy): New function, derived
230 from core list-copy but allowing improper lists, per SRFI-1 spec.
232 * srfi-19.scm (date-week-number): Correction, day of week starting
233 week applied was off by one.
235 2003-07-29 Kevin Ryde <user42@zip.com.au>
237 * srfi-1.c, srfi-1.scm (concatenate, concatenate!): Use scm_append and
240 * srfi-1.c, srfi-1.h, srfi-1.scm (length+): Rewrite using scm_ilength.
242 * srfi-34.scm: Add cond-expand-provide srfi-34.
244 2003-07-14 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
246 * srfi-1.c, srfi-1.h (scm_srfi1_partition), srfi-1.scm (partition):
247 Re-implement in C to avoid stack overflows for long input lists.
249 2003-07-08 Kevin Ryde <user42@zip.com.au>
251 * srfi-1.c, srfi-1.h (scm_srfi1_delete, scm_srfi1_delete_x,
252 scm_srfi1_delete_duplicates, scm_srfi1_delete_duplicates_x): New
253 functions. scm_srfi1_delete_x is derived from scm_delete_x.
254 * srfi-1.scm (delete, delete!, delete-duplicates, delete-duplicates!):
257 2003-06-07 Kevin Ryde <user42@zip.com.au>
259 * srfi-6.scm: #:re-export open-input-string, open-output-string and
260 get-output-string, for the benefit of applications wanting to use
261 #:select on the module.
263 2003-05-29 Stefan Jahn <stefan@lkcc.org>
265 * Makefile.am (libguile_srfi_srfi_1_la_LDFLAGS,
266 libguile_srfi_srfi_4_la_LDFLAGS,
267 libguile_srfi_srfi_13_14__la_LDFLAGS): Added the -no-undefined
268 option for the mingw32 build.
270 2003-05-13 Kevin Ryde <user42@zip.com.au>
272 * srfi-1.scm (delete): Fix predicate arg order to match srfi-1 spec.
274 2003-05-10 Kevin Ryde <user42@zip.com.au>
276 * srfi-1.scm (take): Make this an alias for list-head.
277 (drop): Make this an alias for list-tail.
279 2003-04-30 Neil Jerram <neil@ossau.uklinux.net>
281 * srfi-34.scm: New file.
283 2003-04-23 Marius Vollmer <mvo@zagadka.de>
285 * srfi-1.scm: Removed stray "o" from exports list.
287 2003-04-21 Dirk Herrmann <D.Herrmann@tu-bs.de>
289 * srfi-1.c (srfi1_ilength): Prefer !SCM_CONSP over SCM_NCONSP.
290 Now, guile itself does not include any calls to SCM_NCONSP any
293 2003-04-05 Marius Vollmer <mvo@zagadka.de>
295 * Changed license terms to the plain LGPL thru-out.
297 2003-03-25 Rob Browning <rlb@defaultvalue.org>
299 * srfi-4.c: replace typedefs for basic types with typedefs using
300 new standard int types (i.e. scm_t_uint8, etc.) -- should probably
301 remove typedefs altogether later.
303 2003-03-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
305 * srfi-1.scm: Re-export all srfi-1 bindings implemented by the
306 core. (Thanks to Kevin Ryde.)
308 2003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
310 * srfi-13.scm: Mark replacements.
312 * srfi-17.scm: Mark replacements.
314 2003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
316 * srfi-1.scm (iota, map, for-each, map-in-order, list-index,
317 member, delete, delete!, assoc): Marked as replacements.
318 (filter, filter!): Removed. (Now implemented in the core.)
320 2003-03-06 Mikael Djurfeldt <djurfeldt@nada.kth.se>
322 * srfi-1.c (scm_init_srfi_1): Extend root module map and for-each
323 with the versions in this module using
324 scm_c_extend_primitive_generic.
326 2003-02-03 Mikael Djurfeldt <djurfeldt@nada.kth.se>
328 * srfi-1.c (srfi1_for_each): Corrected argument checking for the
329 case of two argument lists. (Thanks to Kevin Ryde.)
331 2002-12-08 Rob Browning <rlb@defaultvalue.org>
333 * Makefile.am (srfidir): VERSION -> GUILE_EFFECTIVE_VERSION.
335 2002-12-02 Marius Vollmer <mvo@zagadka.ping.de>
337 * Makefile.am (srfiinclude_HEADERS): Added srfi-1.h.
339 2002-12-01 Mikael Djurfeldt <mdj@linnaeus>
341 * srfi-1.scm: Load srfi-1 extension.
342 (map, map-in-order, for-each, member, assoc): Replaced by
343 primitives in srfi-1.c.
344 (map1): Defined as `map'.
346 * Makefile.am: Added rules for srfi-1.c.
348 * srfi-1.c, srfi-1.h: New files.
350 2002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
352 * srfi-13.c (scm_string_tokenize): Instead of using "isgraphic" as
353 the subtitute for char-set:graphic when then token-set hsa been
354 defaulted, grab the real char-set:graphic from (srfi srfi-14).
356 * srfi-14.h (SCM_CHARSET_GET): Cast IDX to unsigned char so that
357 it works for 8-bit characters. Thanks to Matthias Koeppe! No,
360 2002-04-24 Marius Vollmer <mvo@zagadka.ping.de>
362 * srfi-13.c (s_scm_string_tokenize): Only take character sets as
363 the second arg. Collect characters belonging to this set into
364 tokens (as specified by the SRFI), instead of splitting at these
365 characters. Default to an equivalent of char-set:graphic instead
366 of everything-but-whitespace. Thanks to Matthias Koeppe!
368 2002-04-10 Rob Browning <rlb@defaultvalue.org>
370 * .cvsignore: add *.c.clean.c.
372 2002-03-27 Thien-Thi Nguyen <ttn@giblet.glug.org>
374 * srfi-1.scm, srfi-13.scm, srfi-17.scm, srfi-4.scm, srfi-9.scm,
375 srfi-10.scm, srfi-14.scm, srfi-19.scm, srfi-6.scm, srfi-11.scm,
376 srfi-16.scm, srfi-2.scm, srfi-8.scm: Update copyright.
377 Point to manual in commentary; nfc.
379 2002-03-24 Marius Vollmer <mvo@zagadka.ping.de>
381 * Makefile.am (.c.x): Pass "-o $@" to guile-snarf.
383 2002-03-13 Thien-Thi Nguyen <ttn@giblet.glug.org>
385 * srfi-13.c, srfi-14.c, srfi-4.c:
386 Retire inclusion guard macro SCM_MAGIC_SNARFER.
388 * Makefile.am (snarfcppopts): New var.
389 (.c.x): Use $(snarfcppopts). Rework guile-snarf usage.
391 2002-03-11 Marius Vollmer <mvo@zagadka.ping.de>
393 * srfi-13.c (string_titlecase_x): Treat characters as unsigned so
394 that 8-bit chars work. Thanks to David Pirotte!
396 2002-02-24 Rob Browning <rlb@defaultvalue.org>
398 * Makefile.am (libguile_srfi_srfi_4_la_LDFLAGS): use
399 @LIBGUILE_SRFI_SRFI_4_INTERFACE@.
400 (libguile_srfi_srfi_13_14_la_LDFLAGS): use
401 @LIBGUILE_SRFI_SRFI_13_14_INTERFACE@.
403 2002-02-23 Neil Jerram <neil@ossau.uklinux.net>
405 * srfi-19.scm (priv:month-assoc): Correct numbers so that they
406 match the expectations of priv:year-day.
408 2002-02-22 Neil Jerram <neil@ossau.uklinux.net>
410 * srfi-19.scm (priv:year-day): Index into priv:month-assoc using
411 month number, not day number. (Thanks to Sébastien de Menten de
412 Horne for reporting the problem.)
414 2002-02-11 Marius Vollmer <marius.vollmer@uni-dortmund.de>
416 * srfi-14.c, srfi-4.c: Use scm_gc_malloc/scm_malloc and
417 scm_gc_free/free instead of scm_must_malloc and scm_must_free, as
420 2002-01-21 Thien-Thi Nguyen <ttn@giblet.glug.org>
422 * srfi-1.scm (count1, take-while): Rewrite to be tail-recursive.
423 Thanks to Panagiotis Vossos.
425 2002-01-20 Thien-Thi Nguyen <ttn@giblet.glug.org>
427 * srfi-1.scm (map1): Rewrite to be tail-recursive.
428 Thanks to Panagiotis Vossos for the bug report.
430 2001-12-16 Marius Vollmer <mvo@zagadka.ping.de>
432 * srfi-11.scm (let-values): Use `gensym' instead of `gentemp'.
434 2001-11-30 Neil Jerram <neil@ossau.uklinux.net>
436 * Makefile.am (ETAGS_ARGS): Added.
438 2001-11-12 Marius Vollmer <mvo@zagadka.ping.de>
440 * srfi-4.c: Use HAVE_LONG_LONG instead of HAVE_LONG_LONGS and test
441 it with `#ifdef' instead of `#if'.
443 2001-11-07 Neil Jerram <neil@ossau.uklinux.net>
445 * srfi-13.c (scm_string_unfold, scm_string_unfold_right),
446 srfi-14.c (scm_char_set_unfold, scm_char_set_unfold_x): Remove
447 superfluous whitespace at end of docstring lines.
449 2001-11-06 Thien-Thi Nguyen <ttn@glug.org>
451 * srfi-19.scm (time-monotonic->time-monotonic): Spurious;
454 2001-11-04 Stefan Jahn <stefan@lkcc.org>
456 * srfi-13.h, srfi-14.h, srfi-4.h: Follow-up patch. Renamed
457 __FOO__ macros into FOO.
459 2001-11-03 Marius Vollmer <mvo@zagadka.ping.de>
461 * Makefile.am (libguile_srfi_srfi_4_la_LIBADD,
462 libguile_srfi_srfi_13_14_la_LIBADD): Refer to build directory, not
463 the source directory, for libguile.la. Thanks to Ken Raeburn.
465 2001-11-02 Marius Vollmer <mvo@zagadka.ping.de>
467 Support for native Win32. Thanks to Stefan Jahn!
469 * Makefile.am: Put `-no-undefined' into LDFLAGS to support linkers
470 which do not allow unresolved symbols inside shared libraries.
472 * srfi-13.h, srfi-14.h: Defined SCM_SRFI1314_API. Prefixed each
473 exported symbol with SCM_SRFI1314_API.
475 * srfi-4.h: Defined SCM_SRFI4_API. Prefixed each exported
476 symbol with SCM_SRFI4_API.
478 2001-10-21 Mikael Djurfeldt <mdj@linnaeus>
480 * srfi-2.scm, srfi-4.scm, srfi-8.scm, srfi-9.scm, srfi-10.scm,
481 srfi-11.scm, srfi-14.scm, srfi-16.scm: Move module the system
482 directives `export', `export-syntax', `re-export' and
483 `re-export-syntax' into the `define-module' form. This is the
484 recommended way of exporting bindings.
486 2001-09-22 Mikael Djurfeldt <mdj@linnaeus>
488 * srfi-19.scm (priv:split-real): Inserted missing call to
491 2001-09-21 Rob Browning <rlb@defaultvalue.org>
493 * srfi-14.h (SCM_CHARSET_GET): need 1L, not just 1 in "<<".
495 * srfi-14.c (SCM_CHARSET_SET): need 1L, not just 1 in "<<".
496 (scm_char_set_hash): val needs to be long, not just unsigned.
497 (scm_char_set): need 1L, not just 1 in "<<".
498 (scm_list_to_char_set): need 1L, not just 1 in "<<".
499 (scm_list_to_char_set_x): need 1L, not just 1 in "<<".
500 (scm_list_to_char_set_x): FUNC_NAME was wrong - added a _x.
501 (scm_string_to_char_set): string length var needed to be
503 (scm_string_to_char_set): need 1L, not just 1 in "<<".
504 (scm_string_to_char_set_x): string length var needed to be
506 (scm_string_to_char_set_x): need 1L, not just 1 in "<<".
507 (scm_char_set_filter): need 1L, not just 1 in "<<".
508 (scm_char_set_filter_x): need 1L, not just 1 in "<<".
509 (scm_ucs_range_to_char_set): need 1L, not just 1 in "<<".
510 (scm_ucs_range_to_char_set_x): need 1L, not just 1 in "<<".
511 (scm_char_set_adjoin): need 1L, not just 1 in "<<".
512 (scm_char_set_delete): need 1L, not just 1 in "<<".
513 (scm_char_set_adjoin_x): need 1L, not just 1 in "<<".
514 (scm_char_set_delete_x): need 1L, not just 1 in "<<".
516 2001-09-12 Gary Houston <ghouston@arglist.com>
518 * srfi-1.scm (filter): change "caller" to "filter" in check-arg-type.
520 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
522 * srfi-1.scm, srfi-13.scm: Remove the defines that were needed to
523 trick export from the beginning of the files.
525 2001-08-25 Thien-Thi Nguyen <ttn@revel.glug.org>
527 * srfi-19.scm (add-duration): Fix bug: Call `add-duration!' w/
528 two args. Thanks to Alex Shinn.
530 2001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
532 * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu".
534 2001-08-24 Thien-Thi Nguyen <ttn@revel.glug.org>
536 * srfi-13.h (scm_string_map, scm_string_map_x,
537 scm_string_for_each): Reverse order of first two args.
538 (scm_string_for_each_index): New proc.
540 * srfi-13.c (scm_string_for_each): Reverse order of first 2 args.
541 (scm_string_for_each_index): New func.
543 * srfi-13.scm (string-for-each-index): New exported proc.
545 Thanks to Alex Shinn.
547 2001-08-22 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
549 * srfi-13.c (string-map): Swapped order of string and proc args to
550 conform with the srfi. (Thanks to Alex Shinn.)
552 2001-08-05 Gary Houston <ghouston@arglist.com>
554 * srfi-1.scm (check-arg-type, non-negative-integer?): a couple of new
555 internal definitions.
556 (list-tabulate, iota): check for bad arguments that otherwise
558 (filter): check for proper list, to avoid infinite recursion on
561 2001-08-04 Gary Houston <ghouston@arglist.com>
563 * srfi-1.scm (filter): replaced with a tail-recursive version.
564 (remove): implement using filter, to make it tail-recursive.
566 2001-07-31 Gary Houston <ghouston@arglist.com>
568 * srfi-14.c (scm_char_set_diff_plus_intersection): wasn't correctly
569 accounting for the (char-set-union cs2...) in the spec. i.e.,
570 (char-set-diff+intersection a) -> copy-of-a, empty-set
571 and the following are equivalent:
572 (char-set-diff+intersection a (char-set #\a) (char-set #\b))
573 (char-set-diff+intersection a (char-set #\a #\b))
575 (scm_char_set_xor_x): disabled the side-effecting code, since it
576 gives inconsistent results to scm_char_set_xor for the case
577 (char-set-xor! a a a).
579 (scm_char_set_diff_plus_intersection_x): added cs2 argument, since
580 two arguments are compulsory in final spec. also similar changes
581 as for scm_char_set_diff_plus_intersection.
582 * srfi-14.h (scm_char_set_diff_plus_intersection_x): added cs2.
584 2001-07-22 Gary Houston <ghouston@arglist.com>
586 * srfi-14.c (scm_char_set_intersection, scm_char_set_xor): remove
587 the compulsory cs1 arguments: all args are optional in final spec.
589 * srfi-14.h: declarations updated.
591 2001-07-18 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
593 * srfi-11.scm, srfi-8.scm: Update copyright notice.
595 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
597 * srfi-14.c: Okay. Now I got it. Really. This time it's fixed.
600 * srfi-19.scm: Define `current-time' before exporting it.
602 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
604 * srfi-14.c: Fix for bug caused by brain-malfunctioning on my
605 side. Bit sets were handled wrong because I couldn't tell bit
606 counts from byte counts. Also, the bit array should be 256 / 8
607 bytes long. Thank you, Gary!
609 Removed unnecessary protoype for scm_char_set_copy.
611 2001-07-16 Gary Houston <ghouston@arglist.com>
613 * srfi-14.scm: export string->char-set!, not string-char-set!.
615 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next,
616 scm_end_of_char_set_p): reject negative cursor values.
617 (scm_list_to_char_set, scm_list_to_char_set_x): when reporting
618 type error in list component, omit the position (was always 1).
620 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
622 (scm_char_set_map): Bug-fix: char-set-map was modifying the
623 argument instead of the return value.
625 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
627 * srfi-14.c: Allocate correct memory size for charsets (32 bytes),
628 use this value for initializing and comparing charsets.
629 (scm_char_set_hash): Use ``better'' hash algorithm which produces
632 2001-07-15 Gary Houston <ghouston@arglist.com>
634 * srfi-14.c (scm_char_set_hash): recognise 0 instead of #f in the
635 opt arg to give default bound, as in final spec. don't allow
637 (scm_char_set_hash): bug fix: was overrunning the buffer and
638 calculating based on garbage.
639 (scm_char_set_eq, scm_char_set_leq): fix argument number in error
640 reporting: wasn't incremented due to macro coding.
641 (scm_char_set): report argument number in error reporting: was
642 hard coded to 1. remove a couple of local variables.
644 2001-07-13 Marius Vollmer <mvo@zagadka.ping.de>
646 * srfi-2.scm (and-let*): Use `re-export-syntax' instead of
649 2001-07-11 Gary Houston <ghouston@arglist.com>
651 * srfi-14.c (s_scm_char_set_eq): bug fix: (char-set=) should
652 return #t instead of giving wrong-number-of-arguments . take a
653 single "rest" argument. use memcmp instead of a loop to compare
655 (s_scm_char_set_leq): similarly, (char-set<=) should return #t.
656 take a single "rest" argument.
657 srfi-14.h: update the declarations.
659 2001-07-09 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
663 2001-07-06 Gary Houston <ghouston@arglist.com>
665 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
666 delete!, assoc): roll back the previous change. instead place
667 dummy definitions in a deprecated block at the beginning as in
670 2001-07-06 Rob Browning <rlb@defaultvalue.org>
672 * srfi-19.scm (priv:locale-reader): don't need open-output-string.
674 2001-07-03 Gary Houston <ghouston@arglist.com>
676 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
677 delete!, assoc): don't export until the new bindings have been
678 created. otherwise "export" thinks they are being re-exported and
679 a deprecation warning is produced.
680 (map-in-order): defined and exported, to support lists of unequal
683 2001-07-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
685 * srfi-1.scm (list-tabulate): Do not go into infinite loop for
686 invalid arguments. Same fix for several other procedures (do not
687 use zero?, use <= 0).
689 2001-07-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
691 * srfi-1.scm: Replaced calls to `map' in several procedures to
693 (map, for-each): New procedures, extended from R5RS.
695 2001-06-28 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
697 * srfi-4.c: Minor cleanups.
699 * srfi-14.c (scm_char_set_fold, scm_char_set_unfold)
700 (scm_char_set_unfold_x, scm_char_set_for_each)
701 (scm_char_set_map, scm_char_set_filter)
702 (scm_char_set_filter_x, scm_char_set_count)
703 (scm_char_set_every, scm_char_set_any): Replace calls to
704 scm_apply() with the corresponding scm_call_N() functions.
706 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next)
707 (scm_char_set_unfold, scm_char_set_unfold_x)
708 (scm_char_set_map, scm_char_set_diff_plus_intersection)
709 (scm_char_set_diff_plus_intersection_x): Replace deprecated macros
710 SCM_LISTN with calls to scm_list_N().
712 * srfi-13.c (scm_string_tabulate, scm_string_map)
713 (scm_string_map_x, scm_string_unfold)
714 (scm_string_unfold_right): Replace deprecated macros SCM_LISTN
715 with calls to scm_list_N().
717 * srfi-13.c (scm_string_any, scm_string_every),
718 (scm_string_tabulate, scm_string_trim),
719 (scm_string_trim_right, scm_string_trim_both),
720 (scm_string_compare, scm_string_compare_ci),
721 (scm_string_indexS, scm_string_index_right),
722 (scm_string_skip, scm_string_skip_right, scm_string_count),
723 (scm_string_map, scm_string_map_x, scm_string_fold),
724 (scm_string_fold_right, scm_string_unfold),
725 (scm_string_unfold_right, scm_string_for_each),
726 (scm_string_filter, scm_string_delete): Replace calls to
727 scm_apply() with the corresponding scm_call_N() functions.
729 2001-06-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
731 * Makefile.am: Added SRFI-4 files in various places.
733 * srfi-4.c, srfi-4.h, srfi-4.scm: New files implementing SRFI-4.
735 2001-06-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
737 * srfi-13.c (scm_string_copyS, scm_string_take, scm_string_drop,
738 scm_string_take_right, scm_string_drop_right, scm_string_trim,
739 scm_string_trim_right, scm_string_trim_both, scm_string_tokenize):
740 Use scm_mem2string instead of scm_makfromstr.
742 (scm_reverse_list_to_string, string_titlecase_x): Prefer
743 !SCM_<pred> over SCM_N<pred>.
745 2001-06-25 Marius Vollmer <mvo@zagadka.ping.de>
747 * srfi-8.scm: Use `re-export-syntax' to correctly re-export
750 2001-06-18 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
752 The SRFI-19 implementation was completely broken. Already the
753 reference implementation did not handle DST and time zones
754 properly and relied on non-R5RS-isms like passing reals to
755 `quotient'. For Guile, some additional fixes were needed because
756 of the incomplete numeric tower implementation. See also
759 * srfi-19.scm (date-zone-offset): Fixed typo in export clause.
760 (add-duration): Renamed from priv:add-duration.
761 (priv:time-normalize!): Handle fractional nanoseconds; remove
762 duplicate definition.
763 (priv:current-time-tai): Fixed typo.
764 (time=?, time<=?): Fixed typos.
765 (time-tai->time-utc, time-utc->time-tai,
766 time-utc->time-monotonic): Use make-time-unnormalized instead of
767 make-time when uninitialized time fields are used.
768 (set-date-nanosecond!, set-date-second!, set-date-minute!,
769 set-date-hour!, set-date-day!, set-date-month!, set-date-year!,
770 set-date-zone-offset!): Define.
771 (priv:local-tz-offset): Take an extra argument in order to handle
773 (time-utc->date, time-tai->date, time-monotonic->date): Handle the
774 changed signature of priv:local-tz-offset. Don't pass non-integer
775 arguments to quotient (non-R5RS, not supported by Guile).
776 (date->time-utc): Ensure that seconds in a date structure are
777 always exact integers. Handle DST properly.
778 (current-date, julian-day->date, modified-julian-day->date):
779 Handle the changed signature of priv:local-tz-offset.
780 (julian-day->time-utc): Reverted earlier inexact->exact hack;
781 make-time now handles inexact arguments.
782 (priv:locale-print-time-zone): At least print the numerical time
784 (priv:integer-reader): Fixed named let iteration.
785 (priv:read-directives): Use set-date-month! instead of
786 priv:set-date-month! etc.
787 (string->date): Handle DST properly.
789 2001-06-14 Marius Vollmer <mvo@zagadka.ping.de>
791 * srfi-13.scm: Prevent `export' from re-exporting core bindings.
793 2001-06-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
795 * srfi-14.c (charset_print): Mark unused parameters with
798 2001-06-07 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
800 * srfi-1.scm (fold, fold-pair): Fixed a buggy call to apply.
801 (delete-duplicates): Now the first occurrence of an element is
802 retained, as required.
803 (member, assoc): Fixed wrong order of equality predicate
806 2001-06-06 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
810 * srfi-1.scm: New file.
812 2001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
814 Added exception notice to all files.
816 2001-05-31 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
818 * srfi-14.scm, srfi-13.scm: Use `load-extension' for loading the
821 2001-05-31 Michael Livshin <mlivshin@bigfoot.com>
823 * Makefile.am (MKDEP): copied from libguile/Makefile.am, just in
825 (CLEANFILES): added *.x (and removed from DISTCLEANFILES)
827 2001-05-28 Michael Livshin <mlivshin@bigfoot.com>
829 * srfi-19.scm: removed a stray open parenthesis. (thanks to
830 Matthias Köppe for the report).
832 2001-05-23 Rob Browning <rlb@cs.utexas.edu>
834 * srfi-19.scm (:optional): renamed to optional to avoid reader
835 keywords conflict. Time passes... Removed :optional altogether
836 and just handle optional args directly. Thanks to Matthias Koeppe
837 for the report of this and the two bits below.
838 (priv:decode-julian-day-number): add inexact->exact for truncate
840 (time-utc->date): add inexact->exact and floor so quotient will
843 2001-05-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
845 * README: Update, document available SRFIs.
847 2001-05-21 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
849 * srfi-19.scm, srfi-17.scm, srfi-16.scm, srfi-14.scm, srfi-13.scm,
850 srfi-11.scm, srfi-10.scm, srfi-9.scm, srfi-8.scm, srfi-6.scm,
851 srfi-2.scm: Use `cond-expand-provide' for providing features to
854 2001-05-20 Marius Vollmer <mvo@zagadka.ping.de>
856 * srfi-14.c (scm_c_init_srfi_14): Added "int" to declaration of
859 2001-05-19 Marius Vollmer <mvo@zagadka.ping.de>
861 Avoid using module operations from C.
863 * srfi-13.c (scm_init_srfi_13_14): Removed.
864 * srfi-14.h, srfi-14.c (scm_c_init_srfi_14): New. Contains
865 initializations needed by C clients of srfi-14.
866 (scm_init_srfi_13, scm_init_srfi_14): Call it.
867 * srfi-13.scm: Call "scm_init_srfi_13" instead of
868 "scm_init_srfi_13_14".
869 * srfi-14.scm: Call "scm_init_srfi_14" instead of
870 "scm_init_srfi_13_14".
872 2001-05-16 Rob Browning <rlb@cs.utexas.edu>
874 * srfi-19.scm (priv:integer-reader-exact): minor cleanups.
876 2001-05-14 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
878 * Makefile.am (srfi_DATA): Added srfi-16.scm.
880 * srfi-16.scm: New file.
882 2001-05-10 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
884 * srfi-13.c (scm_string_delete): Logic was inversed for charset.
887 2001-05-08 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
889 * srfi-13.c (scm_string_copyS): Fixed nasty bug.
891 2001-05-05 Rob Browning <rlb@cs.utexas.edu>
893 * Makefile.am (srfi_DATA): added srfi-19.scm.
895 * srfi-19.scm: New file - time/date SRFI. Thanks to Will
898 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
900 * srfi-14.c, srfi-13.c: Added @bullet to various @itemize lists.
902 * srfi-10.scm: Typo fix.
904 2001-05-02 Rob Browning <rlb@cs.utexas.edu>
906 * srfi-11.scm (let-values): fix (a b c . d) case. Thanks Martin.
908 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
910 * Makefile.am (srfi_DATA): Added srfi-10.scm and srfi-17.scm.
912 * srfi-10.scm: New file.
914 * srfi-17.scm: New file, contributed by Matthias Koeppe. Thanks a
916 Added `Commentary:' tag.
918 * srfi-9.scm: Added `Commentary:' tag.
920 2001-04-27 Rob Browning <rlb@cs.utexas.edu>
923 (scm_reverse_string_concatenate): renamed to
924 scm_string_concatentate_reverse.
925 (scm_reverse_string_concatenate_shared): renamed to
926 scm_string_concatenate_reverse_shared.
928 2001-04-27 Gary Houston <ghouston@arglist.com>
930 * srfi-13.c (scm_init_srfi_13), srfi-14.c (scm_init_srfi_14):
931 add "srfi/" to lines including .x files so they can be found
932 when build_dir != src_dir.
934 2001-04-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
936 * Makefile.am (srfi_DATA): Added srfi-9.scm.
938 * srfi-9.scm: New file. Exports `define-record-type'.
940 2001-04-26 Rob Browning <rlb@cs.utexas.edu>
942 * Makefile.am (srfi_DATA): added srfi-6.scm.
943 (srfi_DATA): added srfi-11.scm.
944 (srfi_DATA): added srfi-8.scm.
945 (srfi_DATA): added srfi-2.scm.
947 * srfi-11.scm: new file - exports let-values and let*-values.
949 * srfi-6.scm: new file - guile already has srfi-6 procedures
950 loaded by default, so this is a dummy file right now.
952 * srfi-8.scm: new file - exports receive.
954 * srfi-2.scm: new file - just use/export (ice-9 and-let-star)
956 2001-04-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
958 Changed two procedure names to match final SRFI document. Thanks
959 to Rob Browning for spotting this.
961 * srfi-13.scm (string-concatenate-reverse),
962 (string-concatenate-reverse/shared): Rename from
963 reverse-string-concatenate[/shared].
965 * srfi-13.c (scm_string_concatenate_reverse_shared): Renamed from
966 scm_reverse_string_concatenate_shared.
967 (scm_string_concatenate_reverse): Renamed from
968 scm_reverse_string_concatenate.
970 2001-04-25 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
972 * configure.in, autogen.sh: Removed.
974 * srfi-13.c (scm_string_replace): Take sizeof (char) into account
975 when using memmove().
977 * srfi-14.h: Added prototypes for all exported procedures..
979 * srfi-13.c: Include srfi-13.h
981 * srfi-13.h: New file containing the prototypes.
983 * Makefile.am: Removed guile-srfi.texi and info_TEXINFOS variable.
984 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-14.h, so it gets
986 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-13.h.
988 2001-04-24 Neil Jerram <neil@ossau.uklinux.net>
990 * Makefile.am: Fixed "srf-14.x" typo.
992 2001-04-24 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
994 * guile-srfi.texi: Removed, because merged with the GRM.
996 * guile-srfi.texi: The docs are now up to date with the
997 implementation and have new introductory material.
999 2001-04-23 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1001 Integrated the guile-srfi package into the Guile distribution.
1003 * srfi-13.c: All procedures so specified in the SRFI now accept
1004 character set arguments.
1006 * Makefile.am: Snarfed some variables from the guile-readline
1009 * srfi-14.c, srfi-14.h: Add prefix SCM_ to exported macros.
1011 * srfi-13.scm, srfi-14.scm, srfi-13.c, srfi-14.c, srfi-14.h,
1012 configure.in, Makefile.am: Added FSF copyright and Guile license
1015 * srfi-13.c, srfi-14.c: Include srfi-14.h.
1016 (scm_init_srfi_13_14): Initialize the complete module, if not
1019 * srfi-14.h: New file.
1021 * srfi-13.scm, srfi-14.scm: Load new combined library.
1023 * Makefile.am: Build only one library,
1024 `libguile-srfi-srfi-13-14.la'
1026 2001-04-04 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1028 * guile-srfi.texi: Integrated the SRFI-14 documentation.
1030 * srfi-14.c, srfi-14.scm: Made the procedures and variables
1031 compliant to the final SRFI document.
1033 * Renamed the package to guile-srfi.
1035 2001-04-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1037 * NEWS: New section for 0.0.3.
1039 * configure.in, README, guile-srfi-13.texi: Bumped version number
1042 * Released version 0.0.2.
1044 * Makefile.am: Added rules for builing the SRFI-14 library.
1046 * srfi-14.c, srfi-14.scm: New files, implementing SRFI-14
1047 (character set library).
1049 2001-03-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1051 * README: Updated procedure and incompatibility list.
1053 * srfi-13.c (string_upcase_x, scm_string_upcase_xS),
1054 (scm_string_upcase, string_downcase_x, scm_string_downcase_xS),
1055 (scm_string_downcaseS, string_titlecase_x),
1056 (scm_string_titlecase_x, scm_string_titlecase),
1057 (scm_string_fill_xS, scm_string_copyS, scm_string_to_listS): New
1060 * srfi-13.scm: Export new case mapping procedures.
1062 * guile-srfi-13.texi (What cannot be done): Removed case mapping
1063 procedures from incompatibility list.
1064 (Case Mapping): New section for case mapping procedures.
1066 2001-03-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1068 * NEWS: New section for 0.0.2
1070 * configure.in, README, guile-srfi-13.texi: Bumbed version number
1073 * Released version 0.0.1.
1075 * README: Made procedure list up-to-date.
1077 * guile-srfi-13.texi: Fixed typos, completed reference and added
1080 * srfi-13.c, srfi-13.scm: Filled in the last missing pieces.
1082 2001-03-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1084 * Started guile-srfi-13 package. Files are copied from the
1085 guile-gdbm and slightly modified.