1 2005-01-24 Kevin Ryde <user42@zip.com.au>
3 * srfi-1.c (scm_srfi1_member): Correction to pred call arg order, srfi
6 * srfi-1.scm (lset=): Allow no list arguments, per srfi spec example.
8 2005-01-18 Kevin Ryde <user42@zip.com.au>
10 * srfi-1.scm: Remove (ice-9 session) and (ice-9 receive), not used.
12 2005-01-12 Kevin Ryde <user42@zip.com.au>
14 * srfi-39.scm (current-input-port, current-output-port): Parameter
15 replacements for core functions, per SRFI spec.
16 (current-error-port): The same, for consistency.
18 2005-01-10 Marius Vollmer <mvo@zagadka.de>
20 * srfi-1.c (check_args): Bugfix to change from 2005-01-02: ARGV is
21 the vector to check, not ARGS.
23 2005-01-02 Marius Vollmer <mvo@zagadka.de>
25 * srfi-1.c: Use new vector elements API or simple vector API, as
28 2005-01-02 Kevin Ryde <user42@zip.com.au>
30 * Makefile.am (srfi_DATA): Add srfi-39.scm.
32 2004-12-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
34 * README: Update, document available SRFIs.
36 2004-12-06 Kevin Ryde <user42@zip.com.au>
38 * srfi-1.scm (alist-copy, alist-delete, break, span): Change to
41 * srfi-1.scm (alist-delete): Correction to equality proc call argument
42 order, spec is for given KEY param first.
44 2004-12-05 Kevin Ryde <user42@zip.com.au>
46 * srfi-1.scm (filter-map): Change to a tail-recursive form.
47 (append-map, append-map!): Rewrite as simple "concatenate map" forms,
48 for tail recursiveness.
50 2004-10-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
52 * srfi-4.scm, srfi-4.h, srfi-4.c: Moved content into core; only
53 the skeletons remains.
55 2004-10-22 Marius Vollmer <marius.vollmer@uni-dortmund.de>
57 * srfi-4.c (print_int64, print_uint64): Removed.
58 (uvec_print): Use scm_intprint for signed elemets and
59 scm_uintprint for unsigned ones. Do not use print_int64 and
60 print_uint64 since scm_intprint and scm_Uintprint can handle 64
63 2004-09-03 Stefan Jahn <stefan@lkcc.org>
65 * srfi-1.c, srfi-1.h: Renamed any 'lst1' into 'list1' because
66 lst1 is a #define on Win32 systems.
68 2004-08-26 Kevin Ryde <user42@zip.com.au>
70 * srfi-31.scm (rec): Add missing `error' to else clause.
72 2004-08-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
74 * Makefile.am: Added appropriate @LIBGUILE_*_MAJOR@ substitutions
76 * srfi-1.scm, srfi-4.scm: Use the new library names with
79 2004-08-25 Marius Vollmer <mvo@zagadka.de>
81 SRFI-13 and SRFI-14 have been moved into the core.
83 * srfi-13.scm, srfi-14.scm: Simply re-export the relevant
86 * srfi-13.h, srfi-13.c, srfi-14.h, srfi-14.c: Removed all real
87 content except for the init functions.
89 2004-08-19 Marius Vollmer <marius.vollmer@uni-dortmund.de>
91 * srfi-13.h, srfi-13.c: (scm_substring_shared): Renamed to
92 scm_substring_sharedS.
94 * srfi-14.c, srfi-13.c: Adapted to new internal string and symbol
97 * srfi-13.scm (substring/shared): Export as replacement since we
98 now have a version in the core.
100 2004-08-15 Marius Vollmer <mvo@zagadka.de>
102 * srfi-39.scm: New, from Jose A Ortega Ruiz. Thanks!
104 2004-08-14 Kevin Ryde <user42@zip.com.au>
106 * srfi-13.c (scm_string_any, scm_string_every): Add support for char
107 and charset as predicates, per SRFI-13 spec.
109 2004-08-12 Marius Vollmer <marius.vollmer@uni-dortmund.de>
111 * srfi-13.c (MY_VALIDATE_SUBSTRING_SPEC_COPY,
112 MY_VALIDATE_STRING_COPY): Modernized clones of the deprecated
113 validation macros. Replaced every use.
115 2004-08-05 Kevin Ryde <user42@zip.com.au>
117 * srfi-13.c (scm_string_any, scm_string_every): Enhance docstrings as
118 per doc/ref/srfi-modules.texi.
120 2004-08-02 Marius Vollmer <marius.vollmer@uni-dortmund.de>
122 * srfi-4.c: Replaced scm_num2* and scm_*2num with scm_to_* and
123 scm_from_*, respectively.
124 (print_int64, print_uint64): Rewritten by just calling scm_iprin1
127 2004-08-02 Kevin Ryde <user42@zip.com.au>
129 * srfi-13.c (scm_string_every): Correction to initial "res" value,
130 return should be #t for an empty string. Reported by Andreas Vögele.
132 2004-07-10 Marius Vollmer <marius.vollmer@uni-dortmund.de>
134 * srfi-13.c, srfi-14.c, srfi-4.c: Changed all uses of
135 SCM_VALIDATE_INUM, SCM_VALIDATE_INUM_COPY, SCM_VALIDATE_BIGINT,
136 SCM_VALIDATE_INUM_MIN, SCM_VALIDATE_INUM_MIN_COPY,
137 SCM_VALIDATE_INUM_MIN_DEF_COPY,SCM_VALIDATE_INUM_DEF,
138 SCM_VALIDATE_INUM_DEF_COPY, SCM_VALIDATE_INUM_RANGE,
139 SCM_VALIDATE_INUM_RANGE_COPY to scm_to_size_t or similar.
141 2004-07-06 Marius Vollmer <marius.vollmer@uni-dortmund.de>
143 * srfi-1.c, srfi-13.c, srfi-14.c, srfi-4.c: Replaced all uses of
144 deprecated SCM_FALSEP, SCM_NFALSEP, SCM_BOOL, SCM_NEGATE_BOOL, and
145 SCM_BOOLP with scm_is_false, scm_is_true, scm_from_bool, and
146 scm_is_bool, respectively.
148 2004-07-05 Kevin Ryde <user42@zip.com.au>
150 * srfi-4.c (uvec_sizes): Add "const".
152 * srfi-31.scm: Correction to heading comment.
154 2004-06-20 Rob Browning <rlb@defaultvalue.org>
156 * srfi-4.c: fix #ifdef checks for 64-bit types; should be #if.
157 Add separate symmetric test for SCM_HAVE_T_UINT64 in one case.
158 (uvec_print): rewrite using a union to make more
159 compact, and use static print_uint64 and print_int64 to print
161 (print_int64): new static function (temporary fix).
162 (print_uint64): new static function (temporary fix).
164 * Makefile.am (srfi_DATA): add srfi-31.scm.
166 * srfi-31.scm: new file.
168 2004-04-24 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
170 * srfi-17.scm (setter, car, cdr etc.): When within one define
171 expression a new variable in the local module is defined in terms
172 of an equally named variable from some other module, use @ to
173 refer to the variable in the other module. This is necessary due
174 to section 5.2.1 of R5RS: In a define expression first the new
175 binding is created and then the expression is evaluated.
177 2004-04-24 Kevin Ryde <user42@zip.com.au>
179 * srfi-11.scm (let-values): Use make-symbol rather than gensym, for
180 guaranteed uniqueness of temp variable symbols.
182 2004-04-15 Kevin Ryde <user42@zip.com.au>
184 * srfi-13.c (scm_string_trim, scm_string_trim_right,
185 scm_string_trim_both): Cast to unsigned char for isspace.
187 2004-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
189 * srfi-13.c (s_scm_string_map): convert character to unsigned char
190 before converting to unsigned int. This prevents hi-bit ascii as
191 being converted large integers.
192 (string_upcase_x): change caller for scm_{up,down}case to
195 2004-03-23 Kevin Ryde <user42@zip.com.au>
197 * srfi-1.scm (circular-list): Rewrite using set-cdr!, no need to copy
200 2004-02-08 Mikael Djurfeldt <djurfeldt@nada.kth.se>
202 * Makefile.am (TAGS_FILES): Use this variable instead of
203 ETAGS_ARGS so that TAGS can be built using separate build
206 2004-01-24 Marius Vollmer <mvo@zagadka.de>
208 * Makefile.am (srfi_DATA): Added srfi-26.scm.
210 2004-01-21 Marius Vollmer <m.vollmer@ping.de>
212 * srfi-26.scm: New, from Daniel Skarda. Thanks!
214 2003-12-03 Kevin Ryde <user42@zip.com.au>
216 * srfi-1.c, srfi-1.h, srfi-1.scm (count): Rewrite in C, avoiding
219 * srfi-1.scm (map!): Define as an alias for map, previous definition
220 was not tail-recursive.
222 2003-08-23 Kevin Ryde <user42@zip.com.au>
224 * srfi-1.c, srfi-1.h, srfi-1.scm (list-copy): New function, derived
225 from core list-copy but allowing improper lists, per SRFI-1 spec.
227 * srfi-19.scm (date-week-number): Correction, day of week starting
228 week applied was off by one.
230 2003-07-29 Kevin Ryde <user42@zip.com.au>
232 * srfi-1.c, srfi-1.scm (concatenate, concatenate!): Use scm_append and
235 * srfi-1.c, srfi-1.h, srfi-1.scm (length+): Rewrite using scm_ilength.
237 * srfi-34.scm: Add cond-expand-provide srfi-34.
239 2003-07-14 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
241 * srfi-1.c, srfi-1.h (scm_srfi1_partition), srfi-1.scm (partition):
242 Re-implement in C to avoid stack overflows for long input lists.
244 2003-07-08 Kevin Ryde <user42@zip.com.au>
246 * srfi-1.c, srfi-1.h (scm_srfi1_delete, scm_srfi1_delete_x,
247 scm_srfi1_delete_duplicates, scm_srfi1_delete_duplicates_x): New
248 functions. scm_srfi1_delete_x is derived from scm_delete_x.
249 * srfi-1.scm (delete, delete!, delete-duplicates, delete-duplicates!):
252 2003-06-07 Kevin Ryde <user42@zip.com.au>
254 * srfi-6.scm: #:re-export open-input-string, open-output-string and
255 get-output-string, for the benefit of applications wanting to use
256 #:select on the module.
258 2003-05-29 Stefan Jahn <stefan@lkcc.org>
260 * Makefile.am (libguile_srfi_srfi_1_la_LDFLAGS,
261 libguile_srfi_srfi_4_la_LDFLAGS,
262 libguile_srfi_srfi_13_14__la_LDFLAGS): Added the -no-undefined
263 option for the mingw32 build.
265 2003-05-13 Kevin Ryde <user42@zip.com.au>
267 * srfi-1.scm (delete): Fix predicate arg order to match srfi-1 spec.
269 2003-05-10 Kevin Ryde <user42@zip.com.au>
271 * srfi-1.scm (take): Make this an alias for list-head.
272 (drop): Make this an alias for list-tail.
274 2003-04-30 Neil Jerram <neil@ossau.uklinux.net>
276 * srfi-34.scm: New file.
278 2003-04-23 Marius Vollmer <mvo@zagadka.de>
280 * srfi-1.scm: Removed stray "o" from exports list.
282 2003-04-21 Dirk Herrmann <D.Herrmann@tu-bs.de>
284 * srfi-1.c (srfi1_ilength): Prefer !SCM_CONSP over SCM_NCONSP.
285 Now, guile itself does not include any calls to SCM_NCONSP any
288 2003-04-05 Marius Vollmer <mvo@zagadka.de>
290 * Changed license terms to the plain LGPL thru-out.
292 2003-03-25 Rob Browning <rlb@defaultvalue.org>
294 * srfi-4.c: replace typedefs for basic types with typedefs using
295 new standard int types (i.e. scm_t_uint8, etc.) -- should probably
296 remove typedefs altogether later.
298 2003-03-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
300 * srfi-1.scm: Re-export all srfi-1 bindings implemented by the
301 core. (Thanks to Kevin Ryde.)
303 2003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
305 * srfi-13.scm: Mark replacements.
307 * srfi-17.scm: Mark replacements.
309 2003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
311 * srfi-1.scm (iota, map, for-each, map-in-order, list-index,
312 member, delete, delete!, assoc): Marked as replacements.
313 (filter, filter!): Removed. (Now implemented in the core.)
315 2003-03-06 Mikael Djurfeldt <djurfeldt@nada.kth.se>
317 * srfi-1.c (scm_init_srfi_1): Extend root module map and for-each
318 with the versions in this module using
319 scm_c_extend_primitive_generic.
321 2003-02-03 Mikael Djurfeldt <djurfeldt@nada.kth.se>
323 * srfi-1.c (srfi1_for_each): Corrected argument checking for the
324 case of two argument lists. (Thanks to Kevin Ryde.)
326 2002-12-08 Rob Browning <rlb@defaultvalue.org>
328 * Makefile.am (srfidir): VERSION -> GUILE_EFFECTIVE_VERSION.
330 2002-12-02 Marius Vollmer <mvo@zagadka.ping.de>
332 * Makefile.am (srfiinclude_HEADERS): Added srfi-1.h.
334 2002-12-01 Mikael Djurfeldt <mdj@linnaeus>
336 * srfi-1.scm: Load srfi-1 extension.
337 (map, map-in-order, for-each, member, assoc): Replaced by
338 primitives in srfi-1.c.
339 (map1): Defined as `map'.
341 * Makefile.am: Added rules for srfi-1.c.
343 * srfi-1.c, srfi-1.h: New files.
345 2002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
347 * srfi-13.c (scm_string_tokenize): Instead of using "isgraphic" as
348 the subtitute for char-set:graphic when then token-set hsa been
349 defaulted, grab the real char-set:graphic from (srfi srfi-14).
351 * srfi-14.h (SCM_CHARSET_GET): Cast IDX to unsigned char so that
352 it works for 8-bit characters. Thanks to Matthias Koeppe! No,
355 2002-04-24 Marius Vollmer <mvo@zagadka.ping.de>
357 * srfi-13.c (s_scm_string_tokenize): Only take character sets as
358 the second arg. Collect characters belonging to this set into
359 tokens (as specified by the SRFI), instead of splitting at these
360 characters. Default to an equivalent of char-set:graphic instead
361 of everything-but-whitespace. Thanks to Matthias Koeppe!
363 2002-04-10 Rob Browning <rlb@defaultvalue.org>
365 * .cvsignore: add *.c.clean.c.
367 2002-03-27 Thien-Thi Nguyen <ttn@giblet.glug.org>
369 * srfi-1.scm, srfi-13.scm, srfi-17.scm, srfi-4.scm, srfi-9.scm,
370 srfi-10.scm, srfi-14.scm, srfi-19.scm, srfi-6.scm, srfi-11.scm,
371 srfi-16.scm, srfi-2.scm, srfi-8.scm: Update copyright.
372 Point to manual in commentary; nfc.
374 2002-03-24 Marius Vollmer <mvo@zagadka.ping.de>
376 * Makefile.am (.c.x): Pass "-o $@" to guile-snarf.
378 2002-03-13 Thien-Thi Nguyen <ttn@giblet.glug.org>
380 * srfi-13.c, srfi-14.c, srfi-4.c:
381 Retire inclusion guard macro SCM_MAGIC_SNARFER.
383 * Makefile.am (snarfcppopts): New var.
384 (.c.x): Use $(snarfcppopts). Rework guile-snarf usage.
386 2002-03-11 Marius Vollmer <mvo@zagadka.ping.de>
388 * srfi-13.c (string_titlecase_x): Treat characters as unsigned so
389 that 8-bit chars work. Thanks to David Pirotte!
391 2002-02-24 Rob Browning <rlb@defaultvalue.org>
393 * Makefile.am (libguile_srfi_srfi_4_la_LDFLAGS): use
394 @LIBGUILE_SRFI_SRFI_4_INTERFACE@.
395 (libguile_srfi_srfi_13_14_la_LDFLAGS): use
396 @LIBGUILE_SRFI_SRFI_13_14_INTERFACE@.
398 2002-02-23 Neil Jerram <neil@ossau.uklinux.net>
400 * srfi-19.scm (priv:month-assoc): Correct numbers so that they
401 match the expectations of priv:year-day.
403 2002-02-22 Neil Jerram <neil@ossau.uklinux.net>
405 * srfi-19.scm (priv:year-day): Index into priv:month-assoc using
406 month number, not day number. (Thanks to Sébastien de Menten de
407 Horne for reporting the problem.)
409 2002-02-11 Marius Vollmer <marius.vollmer@uni-dortmund.de>
411 * srfi-14.c, srfi-4.c: Use scm_gc_malloc/scm_malloc and
412 scm_gc_free/free instead of scm_must_malloc and scm_must_free, as
415 2002-01-21 Thien-Thi Nguyen <ttn@giblet.glug.org>
417 * srfi-1.scm (count1, take-while): Rewrite to be tail-recursive.
418 Thanks to Panagiotis Vossos.
420 2002-01-20 Thien-Thi Nguyen <ttn@giblet.glug.org>
422 * srfi-1.scm (map1): Rewrite to be tail-recursive.
423 Thanks to Panagiotis Vossos for the bug report.
425 2001-12-16 Marius Vollmer <mvo@zagadka.ping.de>
427 * srfi-11.scm (let-values): Use `gensym' instead of `gentemp'.
429 2001-11-30 Neil Jerram <neil@ossau.uklinux.net>
431 * Makefile.am (ETAGS_ARGS): Added.
433 2001-11-12 Marius Vollmer <mvo@zagadka.ping.de>
435 * srfi-4.c: Use HAVE_LONG_LONG instead of HAVE_LONG_LONGS and test
436 it with `#ifdef' instead of `#if'.
438 2001-11-07 Neil Jerram <neil@ossau.uklinux.net>
440 * srfi-13.c (scm_string_unfold, scm_string_unfold_right),
441 srfi-14.c (scm_char_set_unfold, scm_char_set_unfold_x): Remove
442 superfluous whitespace at end of docstring lines.
444 2001-11-06 Thien-Thi Nguyen <ttn@glug.org>
446 * srfi-19.scm (time-monotonic->time-monotonic): Spurious;
449 2001-11-04 Stefan Jahn <stefan@lkcc.org>
451 * srfi-13.h, srfi-14.h, srfi-4.h: Follow-up patch. Renamed
452 __FOO__ macros into FOO.
454 2001-11-03 Marius Vollmer <mvo@zagadka.ping.de>
456 * Makefile.am (libguile_srfi_srfi_4_la_LIBADD,
457 libguile_srfi_srfi_13_14_la_LIBADD): Refer to build directory, not
458 the source directory, for libguile.la. Thanks to Ken Raeburn.
460 2001-11-02 Marius Vollmer <mvo@zagadka.ping.de>
462 Support for native Win32. Thanks to Stefan Jahn!
464 * Makefile.am: Put `-no-undefined' into LDFLAGS to support linkers
465 which do not allow unresolved symbols inside shared libraries.
467 * srfi-13.h, srfi-14.h: Defined SCM_SRFI1314_API. Prefixed each
468 exported symbol with SCM_SRFI1314_API.
470 * srfi-4.h: Defined SCM_SRFI4_API. Prefixed each exported
471 symbol with SCM_SRFI4_API.
473 2001-10-21 Mikael Djurfeldt <mdj@linnaeus>
475 * srfi-2.scm, srfi-4.scm, srfi-8.scm, srfi-9.scm, srfi-10.scm,
476 srfi-11.scm, srfi-14.scm, srfi-16.scm: Move module the system
477 directives `export', `export-syntax', `re-export' and
478 `re-export-syntax' into the `define-module' form. This is the
479 recommended way of exporting bindings.
481 2001-09-22 Mikael Djurfeldt <mdj@linnaeus>
483 * srfi-19.scm (priv:split-real): Inserted missing call to
486 2001-09-21 Rob Browning <rlb@defaultvalue.org>
488 * srfi-14.h (SCM_CHARSET_GET): need 1L, not just 1 in "<<".
490 * srfi-14.c (SCM_CHARSET_SET): need 1L, not just 1 in "<<".
491 (scm_char_set_hash): val needs to be long, not just unsigned.
492 (scm_char_set): need 1L, not just 1 in "<<".
493 (scm_list_to_char_set): need 1L, not just 1 in "<<".
494 (scm_list_to_char_set_x): need 1L, not just 1 in "<<".
495 (scm_list_to_char_set_x): FUNC_NAME was wrong - added a _x.
496 (scm_string_to_char_set): string length var needed to be
498 (scm_string_to_char_set): need 1L, not just 1 in "<<".
499 (scm_string_to_char_set_x): string length var needed to be
501 (scm_string_to_char_set_x): need 1L, not just 1 in "<<".
502 (scm_char_set_filter): need 1L, not just 1 in "<<".
503 (scm_char_set_filter_x): need 1L, not just 1 in "<<".
504 (scm_ucs_range_to_char_set): need 1L, not just 1 in "<<".
505 (scm_ucs_range_to_char_set_x): need 1L, not just 1 in "<<".
506 (scm_char_set_adjoin): need 1L, not just 1 in "<<".
507 (scm_char_set_delete): need 1L, not just 1 in "<<".
508 (scm_char_set_adjoin_x): need 1L, not just 1 in "<<".
509 (scm_char_set_delete_x): need 1L, not just 1 in "<<".
511 2001-09-12 Gary Houston <ghouston@arglist.com>
513 * srfi-1.scm (filter): change "caller" to "filter" in check-arg-type.
515 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
517 * srfi-1.scm, srfi-13.scm: Remove the defines that were needed to
518 trick export from the beginning of the files.
520 2001-08-25 Thien-Thi Nguyen <ttn@revel.glug.org>
522 * srfi-19.scm (add-duration): Fix bug: Call `add-duration!' w/
523 two args. Thanks to Alex Shinn.
525 2001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
527 * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu".
529 2001-08-24 Thien-Thi Nguyen <ttn@revel.glug.org>
531 * srfi-13.h (scm_string_map, scm_string_map_x,
532 scm_string_for_each): Reverse order of first two args.
533 (scm_string_for_each_index): New proc.
535 * srfi-13.c (scm_string_for_each): Reverse order of first 2 args.
536 (scm_string_for_each_index): New func.
538 * srfi-13.scm (string-for-each-index): New exported proc.
540 Thanks to Alex Shinn.
542 2001-08-22 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
544 * srfi-13.c (string-map): Swapped order of string and proc args to
545 conform with the srfi. (Thanks to Alex Shinn.)
547 2001-08-05 Gary Houston <ghouston@arglist.com>
549 * srfi-1.scm (check-arg-type, non-negative-integer?): a couple of new
550 internal definitions.
551 (list-tabulate, iota): check for bad arguments that otherwise
553 (filter): check for proper list, to avoid infinite recursion on
556 2001-08-04 Gary Houston <ghouston@arglist.com>
558 * srfi-1.scm (filter): replaced with a tail-recursive version.
559 (remove): implement using filter, to make it tail-recursive.
561 2001-07-31 Gary Houston <ghouston@arglist.com>
563 * srfi-14.c (scm_char_set_diff_plus_intersection): wasn't correctly
564 accounting for the (char-set-union cs2...) in the spec. i.e.,
565 (char-set-diff+intersection a) -> copy-of-a, empty-set
566 and the following are equivalent:
567 (char-set-diff+intersection a (char-set #\a) (char-set #\b))
568 (char-set-diff+intersection a (char-set #\a #\b))
570 (scm_char_set_xor_x): disabled the side-effecting code, since it
571 gives inconsistent results to scm_char_set_xor for the case
572 (char-set-xor! a a a).
574 (scm_char_set_diff_plus_intersection_x): added cs2 argument, since
575 two arguments are compulsory in final spec. also similar changes
576 as for scm_char_set_diff_plus_intersection.
577 * srfi-14.h (scm_char_set_diff_plus_intersection_x): added cs2.
579 2001-07-22 Gary Houston <ghouston@arglist.com>
581 * srfi-14.c (scm_char_set_intersection, scm_char_set_xor): remove
582 the compulsory cs1 arguments: all args are optional in final spec.
584 * srfi-14.h: declarations updated.
586 2001-07-18 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
588 * srfi-11.scm, srfi-8.scm: Update copyright notice.
590 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
592 * srfi-14.c: Okay. Now I got it. Really. This time it's fixed.
595 * srfi-19.scm: Define `current-time' before exporting it.
597 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
599 * srfi-14.c: Fix for bug caused by brain-malfunctioning on my
600 side. Bit sets were handled wrong because I couldn't tell bit
601 counts from byte counts. Also, the bit array should be 256 / 8
602 bytes long. Thank you, Gary!
604 Removed unnecessary protoype for scm_char_set_copy.
606 2001-07-16 Gary Houston <ghouston@arglist.com>
608 * srfi-14.scm: export string->char-set!, not string-char-set!.
610 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next,
611 scm_end_of_char_set_p): reject negative cursor values.
612 (scm_list_to_char_set, scm_list_to_char_set_x): when reporting
613 type error in list component, omit the position (was always 1).
615 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
617 (scm_char_set_map): Bug-fix: char-set-map was modifying the
618 argument instead of the return value.
620 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
622 * srfi-14.c: Allocate correct memory size for charsets (32 bytes),
623 use this value for initializing and comparing charsets.
624 (scm_char_set_hash): Use ``better'' hash algorithm which produces
627 2001-07-15 Gary Houston <ghouston@arglist.com>
629 * srfi-14.c (scm_char_set_hash): recognise 0 instead of #f in the
630 opt arg to give default bound, as in final spec. don't allow
632 (scm_char_set_hash): bug fix: was overrunning the buffer and
633 calculating based on garbage.
634 (scm_char_set_eq, scm_char_set_leq): fix argument number in error
635 reporting: wasn't incremented due to macro coding.
636 (scm_char_set): report argument number in error reporting: was
637 hard coded to 1. remove a couple of local variables.
639 2001-07-13 Marius Vollmer <mvo@zagadka.ping.de>
641 * srfi-2.scm (and-let*): Use `re-export-syntax' instead of
644 2001-07-11 Gary Houston <ghouston@arglist.com>
646 * srfi-14.c (s_scm_char_set_eq): bug fix: (char-set=) should
647 return #t instead of giving wrong-number-of-arguments . take a
648 single "rest" argument. use memcmp instead of a loop to compare
650 (s_scm_char_set_leq): similarly, (char-set<=) should return #t.
651 take a single "rest" argument.
652 srfi-14.h: update the declarations.
654 2001-07-09 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
658 2001-07-06 Gary Houston <ghouston@arglist.com>
660 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
661 delete!, assoc): roll back the previous change. instead place
662 dummy definitions in a deprecated block at the beginning as in
665 2001-07-06 Rob Browning <rlb@defaultvalue.org>
667 * srfi-19.scm (priv:locale-reader): don't need open-output-string.
669 2001-07-03 Gary Houston <ghouston@arglist.com>
671 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
672 delete!, assoc): don't export until the new bindings have been
673 created. otherwise "export" thinks they are being re-exported and
674 a deprecation warning is produced.
675 (map-in-order): defined and exported, to support lists of unequal
678 2001-07-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
680 * srfi-1.scm (list-tabulate): Do not go into infinite loop for
681 invalid arguments. Same fix for several other procedures (do not
682 use zero?, use <= 0).
684 2001-07-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
686 * srfi-1.scm: Replaced calls to `map' in several procedures to
688 (map, for-each): New procedures, extended from R5RS.
690 2001-06-28 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
692 * srfi-4.c: Minor cleanups.
694 * srfi-14.c (scm_char_set_fold, scm_char_set_unfold)
695 (scm_char_set_unfold_x, scm_char_set_for_each)
696 (scm_char_set_map, scm_char_set_filter)
697 (scm_char_set_filter_x, scm_char_set_count)
698 (scm_char_set_every, scm_char_set_any): Replace calls to
699 scm_apply() with the corresponding scm_call_N() functions.
701 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next)
702 (scm_char_set_unfold, scm_char_set_unfold_x)
703 (scm_char_set_map, scm_char_set_diff_plus_intersection)
704 (scm_char_set_diff_plus_intersection_x): Replace deprecated macros
705 SCM_LISTN with calls to scm_list_N().
707 * srfi-13.c (scm_string_tabulate, scm_string_map)
708 (scm_string_map_x, scm_string_unfold)
709 (scm_string_unfold_right): Replace deprecated macros SCM_LISTN
710 with calls to scm_list_N().
712 * srfi-13.c (scm_string_any, scm_string_every),
713 (scm_string_tabulate, scm_string_trim),
714 (scm_string_trim_right, scm_string_trim_both),
715 (scm_string_compare, scm_string_compare_ci),
716 (scm_string_indexS, scm_string_index_right),
717 (scm_string_skip, scm_string_skip_right, scm_string_count),
718 (scm_string_map, scm_string_map_x, scm_string_fold),
719 (scm_string_fold_right, scm_string_unfold),
720 (scm_string_unfold_right, scm_string_for_each),
721 (scm_string_filter, scm_string_delete): Replace calls to
722 scm_apply() with the corresponding scm_call_N() functions.
724 2001-06-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
726 * Makefile.am: Added SRFI-4 files in various places.
728 * srfi-4.c, srfi-4.h, srfi-4.scm: New files implementing SRFI-4.
730 2001-06-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
732 * srfi-13.c (scm_string_copyS, scm_string_take, scm_string_drop,
733 scm_string_take_right, scm_string_drop_right, scm_string_trim,
734 scm_string_trim_right, scm_string_trim_both, scm_string_tokenize):
735 Use scm_mem2string instead of scm_makfromstr.
737 (scm_reverse_list_to_string, string_titlecase_x): Prefer
738 !SCM_<pred> over SCM_N<pred>.
740 2001-06-25 Marius Vollmer <mvo@zagadka.ping.de>
742 * srfi-8.scm: Use `re-export-syntax' to correctly re-export
745 2001-06-18 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
747 The SRFI-19 implementation was completely broken. Already the
748 reference implementation did not handle DST and time zones
749 properly and relied on non-R5RS-isms like passing reals to
750 `quotient'. For Guile, some additional fixes were needed because
751 of the incomplete numeric tower implementation. See also
754 * srfi-19.scm (date-zone-offset): Fixed typo in export clause.
755 (add-duration): Renamed from priv:add-duration.
756 (priv:time-normalize!): Handle fractional nanoseconds; remove
757 duplicate definition.
758 (priv:current-time-tai): Fixed typo.
759 (time=?, time<=?): Fixed typos.
760 (time-tai->time-utc, time-utc->time-tai,
761 time-utc->time-monotonic): Use make-time-unnormalized instead of
762 make-time when uninitialized time fields are used.
763 (set-date-nanosecond!, set-date-second!, set-date-minute!,
764 set-date-hour!, set-date-day!, set-date-month!, set-date-year!,
765 set-date-zone-offset!): Define.
766 (priv:local-tz-offset): Take an extra argument in order to handle
768 (time-utc->date, time-tai->date, time-monotonic->date): Handle the
769 changed signature of priv:local-tz-offset. Don't pass non-integer
770 arguments to quotient (non-R5RS, not supported by Guile).
771 (date->time-utc): Ensure that seconds in a date structure are
772 always exact integers. Handle DST properly.
773 (current-date, julian-day->date, modified-julian-day->date):
774 Handle the changed signature of priv:local-tz-offset.
775 (julian-day->time-utc): Reverted earlier inexact->exact hack;
776 make-time now handles inexact arguments.
777 (priv:locale-print-time-zone): At least print the numerical time
779 (priv:integer-reader): Fixed named let iteration.
780 (priv:read-directives): Use set-date-month! instead of
781 priv:set-date-month! etc.
782 (string->date): Handle DST properly.
784 2001-06-14 Marius Vollmer <mvo@zagadka.ping.de>
786 * srfi-13.scm: Prevent `export' from re-exporting core bindings.
788 2001-06-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
790 * srfi-14.c (charset_print): Mark unused parameters with
793 2001-06-07 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
795 * srfi-1.scm (fold, fold-pair): Fixed a buggy call to apply.
796 (delete-duplicates): Now the first occurrence of an element is
797 retained, as required.
798 (member, assoc): Fixed wrong order of equality predicate
801 2001-06-06 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
805 * srfi-1.scm: New file.
807 2001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
809 Added exception notice to all files.
811 2001-05-31 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
813 * srfi-14.scm, srfi-13.scm: Use `load-extension' for loading the
816 2001-05-31 Michael Livshin <mlivshin@bigfoot.com>
818 * Makefile.am (MKDEP): copied from libguile/Makefile.am, just in
820 (CLEANFILES): added *.x (and removed from DISTCLEANFILES)
822 2001-05-28 Michael Livshin <mlivshin@bigfoot.com>
824 * srfi-19.scm: removed a stray open parenthesis. (thanks to
825 Matthias Köppe for the report).
827 2001-05-23 Rob Browning <rlb@cs.utexas.edu>
829 * srfi-19.scm (:optional): renamed to optional to avoid reader
830 keywords conflict. Time passes... Removed :optional altogether
831 and just handle optional args directly. Thanks to Matthias Koeppe
832 for the report of this and the two bits below.
833 (priv:decode-julian-day-number): add inexact->exact for truncate
835 (time-utc->date): add inexact->exact and floor so quotient will
838 2001-05-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
840 * README: Update, document available SRFIs.
842 2001-05-21 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
844 * srfi-19.scm, srfi-17.scm, srfi-16.scm, srfi-14.scm, srfi-13.scm,
845 srfi-11.scm, srfi-10.scm, srfi-9.scm, srfi-8.scm, srfi-6.scm,
846 srfi-2.scm: Use `cond-expand-provide' for providing features to
849 2001-05-20 Marius Vollmer <mvo@zagadka.ping.de>
851 * srfi-14.c (scm_c_init_srfi_14): Added "int" to declaration of
854 2001-05-19 Marius Vollmer <mvo@zagadka.ping.de>
856 Avoid using module operations from C.
858 * srfi-13.c (scm_init_srfi_13_14): Removed.
859 * srfi-14.h, srfi-14.c (scm_c_init_srfi_14): New. Contains
860 initializations needed by C clients of srfi-14.
861 (scm_init_srfi_13, scm_init_srfi_14): Call it.
862 * srfi-13.scm: Call "scm_init_srfi_13" instead of
863 "scm_init_srfi_13_14".
864 * srfi-14.scm: Call "scm_init_srfi_14" instead of
865 "scm_init_srfi_13_14".
867 2001-05-16 Rob Browning <rlb@cs.utexas.edu>
869 * srfi-19.scm (priv:integer-reader-exact): minor cleanups.
871 2001-05-14 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
873 * Makefile.am (srfi_DATA): Added srfi-16.scm.
875 * srfi-16.scm: New file.
877 2001-05-10 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
879 * srfi-13.c (scm_string_delete): Logic was inversed for charset.
882 2001-05-08 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
884 * srfi-13.c (scm_string_copyS): Fixed nasty bug.
886 2001-05-05 Rob Browning <rlb@cs.utexas.edu>
888 * Makefile.am (srfi_DATA): added srfi-19.scm.
890 * srfi-19.scm: New file - time/date SRFI. Thanks to Will
893 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
895 * srfi-14.c, srfi-13.c: Added @bullet to various @itemize lists.
897 * srfi-10.scm: Typo fix.
899 2001-05-02 Rob Browning <rlb@cs.utexas.edu>
901 * srfi-11.scm (let-values): fix (a b c . d) case. Thanks Martin.
903 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
905 * Makefile.am (srfi_DATA): Added srfi-10.scm and srfi-17.scm.
907 * srfi-10.scm: New file.
909 * srfi-17.scm: New file, contributed by Matthias Koeppe. Thanks a
911 Added `Commentary:' tag.
913 * srfi-9.scm: Added `Commentary:' tag.
915 2001-04-27 Rob Browning <rlb@cs.utexas.edu>
918 (scm_reverse_string_concatenate): renamed to
919 scm_string_concatentate_reverse.
920 (scm_reverse_string_concatenate_shared): renamed to
921 scm_string_concatenate_reverse_shared.
923 2001-04-27 Gary Houston <ghouston@arglist.com>
925 * srfi-13.c (scm_init_srfi_13), srfi-14.c (scm_init_srfi_14):
926 add "srfi/" to lines including .x files so they can be found
927 when build_dir != src_dir.
929 2001-04-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
931 * Makefile.am (srfi_DATA): Added srfi-9.scm.
933 * srfi-9.scm: New file. Exports `define-record-type'.
935 2001-04-26 Rob Browning <rlb@cs.utexas.edu>
937 * Makefile.am (srfi_DATA): added srfi-6.scm.
938 (srfi_DATA): added srfi-11.scm.
939 (srfi_DATA): added srfi-8.scm.
940 (srfi_DATA): added srfi-2.scm.
942 * srfi-11.scm: new file - exports let-values and let*-values.
944 * srfi-6.scm: new file - guile already has srfi-6 procedures
945 loaded by default, so this is a dummy file right now.
947 * srfi-8.scm: new file - exports receive.
949 * srfi-2.scm: new file - just use/export (ice-9 and-let-star)
951 2001-04-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
953 Changed two procedure names to match final SRFI document. Thanks
954 to Rob Browning for spotting this.
956 * srfi-13.scm (string-concatenate-reverse),
957 (string-concatenate-reverse/shared): Rename from
958 reverse-string-concatenate[/shared].
960 * srfi-13.c (scm_string_concatenate_reverse_shared): Renamed from
961 scm_reverse_string_concatenate_shared.
962 (scm_string_concatenate_reverse): Renamed from
963 scm_reverse_string_concatenate.
965 2001-04-25 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
967 * configure.in, autogen.sh: Removed.
969 * srfi-13.c (scm_string_replace): Take sizeof (char) into account
970 when using memmove().
972 * srfi-14.h: Added prototypes for all exported procedures..
974 * srfi-13.c: Include srfi-13.h
976 * srfi-13.h: New file containing the prototypes.
978 * Makefile.am: Removed guile-srfi.texi and info_TEXINFOS variable.
979 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-14.h, so it gets
981 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-13.h.
983 2001-04-24 Neil Jerram <neil@ossau.uklinux.net>
985 * Makefile.am: Fixed "srf-14.x" typo.
987 2001-04-24 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
989 * guile-srfi.texi: Removed, because merged with the GRM.
991 * guile-srfi.texi: The docs are now up to date with the
992 implementation and have new introductory material.
994 2001-04-23 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
996 Integrated the guile-srfi package into the Guile distribution.
998 * srfi-13.c: All procedures so specified in the SRFI now accept
999 character set arguments.
1001 * Makefile.am: Snarfed some variables from the guile-readline
1004 * srfi-14.c, srfi-14.h: Add prefix SCM_ to exported macros.
1006 * srfi-13.scm, srfi-14.scm, srfi-13.c, srfi-14.c, srfi-14.h,
1007 configure.in, Makefile.am: Added FSF copyright and Guile license
1010 * srfi-13.c, srfi-14.c: Include srfi-14.h.
1011 (scm_init_srfi_13_14): Initialize the complete module, if not
1014 * srfi-14.h: New file.
1016 * srfi-13.scm, srfi-14.scm: Load new combined library.
1018 * Makefile.am: Build only one library,
1019 `libguile-srfi-srfi-13-14.la'
1021 2001-04-04 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1023 * guile-srfi.texi: Integrated the SRFI-14 documentation.
1025 * srfi-14.c, srfi-14.scm: Made the procedures and variables
1026 compliant to the final SRFI document.
1028 * Renamed the package to guile-srfi.
1030 2001-04-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1032 * NEWS: New section for 0.0.3.
1034 * configure.in, README, guile-srfi-13.texi: Bumped version number
1037 * Released version 0.0.2.
1039 * Makefile.am: Added rules for builing the SRFI-14 library.
1041 * srfi-14.c, srfi-14.scm: New files, implementing SRFI-14
1042 (character set library).
1044 2001-03-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1046 * README: Updated procedure and incompatibility list.
1048 * srfi-13.c (string_upcase_x, scm_string_upcase_xS),
1049 (scm_string_upcase, string_downcase_x, scm_string_downcase_xS),
1050 (scm_string_downcaseS, string_titlecase_x),
1051 (scm_string_titlecase_x, scm_string_titlecase),
1052 (scm_string_fill_xS, scm_string_copyS, scm_string_to_listS): New
1055 * srfi-13.scm: Export new case mapping procedures.
1057 * guile-srfi-13.texi (What cannot be done): Removed case mapping
1058 procedures from incompatibility list.
1059 (Case Mapping): New section for case mapping procedures.
1061 2001-03-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1063 * NEWS: New section for 0.0.2
1065 * configure.in, README, guile-srfi-13.texi: Bumbed version number
1068 * Released version 0.0.1.
1070 * README: Made procedure list up-to-date.
1072 * guile-srfi-13.texi: Fixed typos, completed reference and added
1075 * srfi-13.c, srfi-13.scm: Filled in the last missing pieces.
1077 2001-03-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1079 * Started guile-srfi-13 package. Files are copied from the
1080 guile-gdbm and slightly modified.