1 2004-12-06 Kevin Ryde <user42@zip.com.au>
3 * srfi-1.scm (alist-copy, alist-delete, break, span): Change to
6 * srfi-1.scm (alist-delete): Correction to equality proc call argument
7 order, spec is for given KEY param first.
9 2004-12-05 Kevin Ryde <user42@zip.com.au>
11 * srfi-1.scm (filter-map): Change to a tail-recursive form.
12 (append-map, append-map!): Rewrite as simple "concatenate map" forms,
13 for tail recursiveness.
15 2004-10-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
17 * srfi-4.scm, srfi-4.h, srfi-4.c: Moved content into core; only
18 the skeletons remains.
20 2004-10-22 Marius Vollmer <marius.vollmer@uni-dortmund.de>
22 * srfi-4.c (print_int64, print_uint64): Removed.
23 (uvec_print): Use scm_intprint for signed elemets and
24 scm_uintprint for unsigned ones. Do not use print_int64 and
25 print_uint64 since scm_intprint and scm_Uintprint can handle 64
28 2004-09-03 Stefan Jahn <stefan@lkcc.org>
30 * srfi-1.c, srfi-1.h: Renamed any 'lst1' into 'list1' because
31 lst1 is a #define on Win32 systems.
33 2004-08-26 Kevin Ryde <user42@zip.com.au>
35 * srfi-31.scm (rec): Add missing `error' to else clause.
37 2004-08-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
39 * Makefile.am: Added appropriate @LIBGUILE_*_MAJOR@ substitutions
41 * srfi-1.scm, srfi-4.scm: Use the new library names with
44 2004-08-25 Marius Vollmer <mvo@zagadka.de>
46 SRFI-13 and SRFI-14 have been moved into the core.
48 * srfi-13.scm, srfi-14.scm: Simply re-export the relevant
51 * srfi-13.h, srfi-13.c, srfi-14.h, srfi-14.c: Removed all real
52 content except for the init functions.
54 2004-08-19 Marius Vollmer <marius.vollmer@uni-dortmund.de>
56 * srfi-13.h, srfi-13.c: (scm_substring_shared): Renamed to
57 scm_substring_sharedS.
59 * srfi-14.c, srfi-13.c: Adapted to new internal string and symbol
62 * srfi-13.scm (substring/shared): Export as replacement since we
63 now have a version in the core.
65 2004-08-15 Marius Vollmer <mvo@zagadka.de>
67 * srfi-39.scm: New, from Jose A Ortega Ruiz. Thanks!
69 2004-08-14 Kevin Ryde <user42@zip.com.au>
71 * srfi-13.c (scm_string_any, scm_string_every): Add support for char
72 and charset as predicates, per SRFI-13 spec.
74 2004-08-12 Marius Vollmer <marius.vollmer@uni-dortmund.de>
76 * srfi-13.c (MY_VALIDATE_SUBSTRING_SPEC_COPY,
77 MY_VALIDATE_STRING_COPY): Modernized clones of the deprecated
78 validation macros. Replaced every use.
80 2004-08-05 Kevin Ryde <user42@zip.com.au>
82 * srfi-13.c (scm_string_any, scm_string_every): Enhance docstrings as
83 per doc/ref/srfi-modules.texi.
85 2004-08-02 Marius Vollmer <marius.vollmer@uni-dortmund.de>
87 * srfi-4.c: Replaced scm_num2* and scm_*2num with scm_to_* and
88 scm_from_*, respectively.
89 (print_int64, print_uint64): Rewritten by just calling scm_iprin1
92 2004-08-02 Kevin Ryde <user42@zip.com.au>
94 * srfi-13.c (scm_string_every): Correction to initial "res" value,
95 return should be #t for an empty string. Reported by Andreas Vögele.
97 2004-07-10 Marius Vollmer <marius.vollmer@uni-dortmund.de>
99 * srfi-13.c, srfi-14.c, srfi-4.c: Changed all uses of
100 SCM_VALIDATE_INUM, SCM_VALIDATE_INUM_COPY, SCM_VALIDATE_BIGINT,
101 SCM_VALIDATE_INUM_MIN, SCM_VALIDATE_INUM_MIN_COPY,
102 SCM_VALIDATE_INUM_MIN_DEF_COPY,SCM_VALIDATE_INUM_DEF,
103 SCM_VALIDATE_INUM_DEF_COPY, SCM_VALIDATE_INUM_RANGE,
104 SCM_VALIDATE_INUM_RANGE_COPY to scm_to_size_t or similar.
106 2004-07-06 Marius Vollmer <marius.vollmer@uni-dortmund.de>
108 * srfi-1.c, srfi-13.c, srfi-14.c, srfi-4.c: Replaced all uses of
109 deprecated SCM_FALSEP, SCM_NFALSEP, SCM_BOOL, SCM_NEGATE_BOOL, and
110 SCM_BOOLP with scm_is_false, scm_is_true, scm_from_bool, and
111 scm_is_bool, respectively.
113 2004-07-05 Kevin Ryde <user42@zip.com.au>
115 * srfi-4.c (uvec_sizes): Add "const".
117 * srfi-31.scm: Correction to heading comment.
119 2004-06-20 Rob Browning <rlb@defaultvalue.org>
121 * srfi-4.c: fix #ifdef checks for 64-bit types; should be #if.
122 Add separate symmetric test for SCM_HAVE_T_UINT64 in one case.
123 (uvec_print): rewrite using a union to make more
124 compact, and use static print_uint64 and print_int64 to print
126 (print_int64): new static function (temporary fix).
127 (print_uint64): new static function (temporary fix).
129 * Makefile.am (srfi_DATA): add srfi-31.scm.
131 * srfi-31.scm: new file.
133 2004-04-24 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
135 * srfi-17.scm (setter, car, cdr etc.): When within one define
136 expression a new variable in the local module is defined in terms
137 of an equally named variable from some other module, use @ to
138 refer to the variable in the other module. This is necessary due
139 to section 5.2.1 of R5RS: In a define expression first the new
140 binding is created and then the expression is evaluated.
142 2004-04-24 Kevin Ryde <user42@zip.com.au>
144 * srfi-11.scm (let-values): Use make-symbol rather than gensym, for
145 guaranteed uniqueness of temp variable symbols.
147 2004-04-15 Kevin Ryde <user42@zip.com.au>
149 * srfi-13.c (scm_string_trim, scm_string_trim_right,
150 scm_string_trim_both): Cast to unsigned char for isspace.
152 2004-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
154 * srfi-13.c (s_scm_string_map): convert character to unsigned char
155 before converting to unsigned int. This prevents hi-bit ascii as
156 being converted large integers.
157 (string_upcase_x): change caller for scm_{up,down}case to
160 2004-03-23 Kevin Ryde <user42@zip.com.au>
162 * srfi-1.scm (circular-list): Rewrite using set-cdr!, no need to copy
165 2004-02-08 Mikael Djurfeldt <djurfeldt@nada.kth.se>
167 * Makefile.am (TAGS_FILES): Use this variable instead of
168 ETAGS_ARGS so that TAGS can be built using separate build
171 2004-01-24 Marius Vollmer <mvo@zagadka.de>
173 * Makefile.am (srfi_DATA): Added srfi-26.scm.
175 2004-01-21 Marius Vollmer <m.vollmer@ping.de>
177 * srfi-26.scm: New, from Daniel Skarda. Thanks!
179 2003-12-03 Kevin Ryde <user42@zip.com.au>
181 * srfi-1.c, srfi-1.h, srfi-1.scm (count): Rewrite in C, avoiding
184 * srfi-1.scm (map!): Define as an alias for map, previous definition
185 was not tail-recursive.
187 2003-08-23 Kevin Ryde <user42@zip.com.au>
189 * srfi-1.c, srfi-1.h, srfi-1.scm (list-copy): New function, derived
190 from core list-copy but allowing improper lists, per SRFI-1 spec.
192 * srfi-19.scm (date-week-number): Correction, day of week starting
193 week applied was off by one.
195 2003-07-29 Kevin Ryde <user42@zip.com.au>
197 * srfi-1.c, srfi-1.scm (concatenate, concatenate!): Use scm_append and
200 * srfi-1.c, srfi-1.h, srfi-1.scm (length+): Rewrite using scm_ilength.
202 * srfi-34.scm: Add cond-expand-provide srfi-34.
204 2003-07-14 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
206 * srfi-1.c, srfi-1.h (scm_srfi1_partition), srfi-1.scm (partition):
207 Re-implement in C to avoid stack overflows for long input lists.
209 2003-07-08 Kevin Ryde <user42@zip.com.au>
211 * srfi-1.c, srfi-1.h (scm_srfi1_delete, scm_srfi1_delete_x,
212 scm_srfi1_delete_duplicates, scm_srfi1_delete_duplicates_x): New
213 functions. scm_srfi1_delete_x is derived from scm_delete_x.
214 * srfi-1.scm (delete, delete!, delete-duplicates, delete-duplicates!):
217 2003-06-07 Kevin Ryde <user42@zip.com.au>
219 * srfi-6.scm: #:re-export open-input-string, open-output-string and
220 get-output-string, for the benefit of applications wanting to use
221 #:select on the module.
223 2003-05-29 Stefan Jahn <stefan@lkcc.org>
225 * Makefile.am (libguile_srfi_srfi_1_la_LDFLAGS,
226 libguile_srfi_srfi_4_la_LDFLAGS,
227 libguile_srfi_srfi_13_14__la_LDFLAGS): Added the -no-undefined
228 option for the mingw32 build.
230 2003-05-13 Kevin Ryde <user42@zip.com.au>
232 * srfi-1.scm (delete): Fix predicate arg order to match srfi-1 spec.
234 2003-05-10 Kevin Ryde <user42@zip.com.au>
236 * srfi-1.scm (take): Make this an alias for list-head.
237 (drop): Make this an alias for list-tail.
239 2003-04-30 Neil Jerram <neil@ossau.uklinux.net>
241 * srfi-34.scm: New file.
243 2003-04-23 Marius Vollmer <mvo@zagadka.de>
245 * srfi-1.scm: Removed stray "o" from exports list.
247 2003-04-21 Dirk Herrmann <D.Herrmann@tu-bs.de>
249 * srfi-1.c (srfi1_ilength): Prefer !SCM_CONSP over SCM_NCONSP.
250 Now, guile itself does not include any calls to SCM_NCONSP any
253 2003-04-05 Marius Vollmer <mvo@zagadka.de>
255 * Changed license terms to the plain LGPL thru-out.
257 2003-03-25 Rob Browning <rlb@defaultvalue.org>
259 * srfi-4.c: replace typedefs for basic types with typedefs using
260 new standard int types (i.e. scm_t_uint8, etc.) -- should probably
261 remove typedefs altogether later.
263 2003-03-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
265 * srfi-1.scm: Re-export all srfi-1 bindings implemented by the
266 core. (Thanks to Kevin Ryde.)
268 2003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
270 * srfi-13.scm: Mark replacements.
272 * srfi-17.scm: Mark replacements.
274 2003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
276 * srfi-1.scm (iota, map, for-each, map-in-order, list-index,
277 member, delete, delete!, assoc): Marked as replacements.
278 (filter, filter!): Removed. (Now implemented in the core.)
280 2003-03-06 Mikael Djurfeldt <djurfeldt@nada.kth.se>
282 * srfi-1.c (scm_init_srfi_1): Extend root module map and for-each
283 with the versions in this module using
284 scm_c_extend_primitive_generic.
286 2003-02-03 Mikael Djurfeldt <djurfeldt@nada.kth.se>
288 * srfi-1.c (srfi1_for_each): Corrected argument checking for the
289 case of two argument lists. (Thanks to Kevin Ryde.)
291 2002-12-08 Rob Browning <rlb@defaultvalue.org>
293 * Makefile.am (srfidir): VERSION -> GUILE_EFFECTIVE_VERSION.
295 2002-12-02 Marius Vollmer <mvo@zagadka.ping.de>
297 * Makefile.am (srfiinclude_HEADERS): Added srfi-1.h.
299 2002-12-01 Mikael Djurfeldt <mdj@linnaeus>
301 * srfi-1.scm: Load srfi-1 extension.
302 (map, map-in-order, for-each, member, assoc): Replaced by
303 primitives in srfi-1.c.
304 (map1): Defined as `map'.
306 * Makefile.am: Added rules for srfi-1.c.
308 * srfi-1.c, srfi-1.h: New files.
310 2002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
312 * srfi-13.c (scm_string_tokenize): Instead of using "isgraphic" as
313 the subtitute for char-set:graphic when then token-set hsa been
314 defaulted, grab the real char-set:graphic from (srfi srfi-14).
316 * srfi-14.h (SCM_CHARSET_GET): Cast IDX to unsigned char so that
317 it works for 8-bit characters. Thanks to Matthias Koeppe! No,
320 2002-04-24 Marius Vollmer <mvo@zagadka.ping.de>
322 * srfi-13.c (s_scm_string_tokenize): Only take character sets as
323 the second arg. Collect characters belonging to this set into
324 tokens (as specified by the SRFI), instead of splitting at these
325 characters. Default to an equivalent of char-set:graphic instead
326 of everything-but-whitespace. Thanks to Matthias Koeppe!
328 2002-04-10 Rob Browning <rlb@defaultvalue.org>
330 * .cvsignore: add *.c.clean.c.
332 2002-03-27 Thien-Thi Nguyen <ttn@giblet.glug.org>
334 * srfi-1.scm, srfi-13.scm, srfi-17.scm, srfi-4.scm, srfi-9.scm,
335 srfi-10.scm, srfi-14.scm, srfi-19.scm, srfi-6.scm, srfi-11.scm,
336 srfi-16.scm, srfi-2.scm, srfi-8.scm: Update copyright.
337 Point to manual in commentary; nfc.
339 2002-03-24 Marius Vollmer <mvo@zagadka.ping.de>
341 * Makefile.am (.c.x): Pass "-o $@" to guile-snarf.
343 2002-03-13 Thien-Thi Nguyen <ttn@giblet.glug.org>
345 * srfi-13.c, srfi-14.c, srfi-4.c:
346 Retire inclusion guard macro SCM_MAGIC_SNARFER.
348 * Makefile.am (snarfcppopts): New var.
349 (.c.x): Use $(snarfcppopts). Rework guile-snarf usage.
351 2002-03-11 Marius Vollmer <mvo@zagadka.ping.de>
353 * srfi-13.c (string_titlecase_x): Treat characters as unsigned so
354 that 8-bit chars work. Thanks to David Pirotte!
356 2002-02-24 Rob Browning <rlb@defaultvalue.org>
358 * Makefile.am (libguile_srfi_srfi_4_la_LDFLAGS): use
359 @LIBGUILE_SRFI_SRFI_4_INTERFACE@.
360 (libguile_srfi_srfi_13_14_la_LDFLAGS): use
361 @LIBGUILE_SRFI_SRFI_13_14_INTERFACE@.
363 2002-02-23 Neil Jerram <neil@ossau.uklinux.net>
365 * srfi-19.scm (priv:month-assoc): Correct numbers so that they
366 match the expectations of priv:year-day.
368 2002-02-22 Neil Jerram <neil@ossau.uklinux.net>
370 * srfi-19.scm (priv:year-day): Index into priv:month-assoc using
371 month number, not day number. (Thanks to Sébastien de Menten de
372 Horne for reporting the problem.)
374 2002-02-11 Marius Vollmer <marius.vollmer@uni-dortmund.de>
376 * srfi-14.c, srfi-4.c: Use scm_gc_malloc/scm_malloc and
377 scm_gc_free/free instead of scm_must_malloc and scm_must_free, as
380 2002-01-21 Thien-Thi Nguyen <ttn@giblet.glug.org>
382 * srfi-1.scm (count1, take-while): Rewrite to be tail-recursive.
383 Thanks to Panagiotis Vossos.
385 2002-01-20 Thien-Thi Nguyen <ttn@giblet.glug.org>
387 * srfi-1.scm (map1): Rewrite to be tail-recursive.
388 Thanks to Panagiotis Vossos for the bug report.
390 2001-12-16 Marius Vollmer <mvo@zagadka.ping.de>
392 * srfi-11.scm (let-values): Use `gensym' instead of `gentemp'.
394 2001-11-30 Neil Jerram <neil@ossau.uklinux.net>
396 * Makefile.am (ETAGS_ARGS): Added.
398 2001-11-12 Marius Vollmer <mvo@zagadka.ping.de>
400 * srfi-4.c: Use HAVE_LONG_LONG instead of HAVE_LONG_LONGS and test
401 it with `#ifdef' instead of `#if'.
403 2001-11-07 Neil Jerram <neil@ossau.uklinux.net>
405 * srfi-13.c (scm_string_unfold, scm_string_unfold_right),
406 srfi-14.c (scm_char_set_unfold, scm_char_set_unfold_x): Remove
407 superfluous whitespace at end of docstring lines.
409 2001-11-06 Thien-Thi Nguyen <ttn@glug.org>
411 * srfi-19.scm (time-monotonic->time-monotonic): Spurious;
414 2001-11-04 Stefan Jahn <stefan@lkcc.org>
416 * srfi-13.h, srfi-14.h, srfi-4.h: Follow-up patch. Renamed
417 __FOO__ macros into FOO.
419 2001-11-03 Marius Vollmer <mvo@zagadka.ping.de>
421 * Makefile.am (libguile_srfi_srfi_4_la_LIBADD,
422 libguile_srfi_srfi_13_14_la_LIBADD): Refer to build directory, not
423 the source directory, for libguile.la. Thanks to Ken Raeburn.
425 2001-11-02 Marius Vollmer <mvo@zagadka.ping.de>
427 Support for native Win32. Thanks to Stefan Jahn!
429 * Makefile.am: Put `-no-undefined' into LDFLAGS to support linkers
430 which do not allow unresolved symbols inside shared libraries.
432 * srfi-13.h, srfi-14.h: Defined SCM_SRFI1314_API. Prefixed each
433 exported symbol with SCM_SRFI1314_API.
435 * srfi-4.h: Defined SCM_SRFI4_API. Prefixed each exported
436 symbol with SCM_SRFI4_API.
438 2001-10-21 Mikael Djurfeldt <mdj@linnaeus>
440 * srfi-2.scm, srfi-4.scm, srfi-8.scm, srfi-9.scm, srfi-10.scm,
441 srfi-11.scm, srfi-14.scm, srfi-16.scm: Move module the system
442 directives `export', `export-syntax', `re-export' and
443 `re-export-syntax' into the `define-module' form. This is the
444 recommended way of exporting bindings.
446 2001-09-22 Mikael Djurfeldt <mdj@linnaeus>
448 * srfi-19.scm (priv:split-real): Inserted missing call to
451 2001-09-21 Rob Browning <rlb@defaultvalue.org>
453 * srfi-14.h (SCM_CHARSET_GET): need 1L, not just 1 in "<<".
455 * srfi-14.c (SCM_CHARSET_SET): need 1L, not just 1 in "<<".
456 (scm_char_set_hash): val needs to be long, not just unsigned.
457 (scm_char_set): need 1L, not just 1 in "<<".
458 (scm_list_to_char_set): need 1L, not just 1 in "<<".
459 (scm_list_to_char_set_x): need 1L, not just 1 in "<<".
460 (scm_list_to_char_set_x): FUNC_NAME was wrong - added a _x.
461 (scm_string_to_char_set): string length var needed to be
463 (scm_string_to_char_set): need 1L, not just 1 in "<<".
464 (scm_string_to_char_set_x): string length var needed to be
466 (scm_string_to_char_set_x): need 1L, not just 1 in "<<".
467 (scm_char_set_filter): need 1L, not just 1 in "<<".
468 (scm_char_set_filter_x): need 1L, not just 1 in "<<".
469 (scm_ucs_range_to_char_set): need 1L, not just 1 in "<<".
470 (scm_ucs_range_to_char_set_x): need 1L, not just 1 in "<<".
471 (scm_char_set_adjoin): need 1L, not just 1 in "<<".
472 (scm_char_set_delete): need 1L, not just 1 in "<<".
473 (scm_char_set_adjoin_x): need 1L, not just 1 in "<<".
474 (scm_char_set_delete_x): need 1L, not just 1 in "<<".
476 2001-09-12 Gary Houston <ghouston@arglist.com>
478 * srfi-1.scm (filter): change "caller" to "filter" in check-arg-type.
480 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
482 * srfi-1.scm, srfi-13.scm: Remove the defines that were needed to
483 trick export from the beginning of the files.
485 2001-08-25 Thien-Thi Nguyen <ttn@revel.glug.org>
487 * srfi-19.scm (add-duration): Fix bug: Call `add-duration!' w/
488 two args. Thanks to Alex Shinn.
490 2001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
492 * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu".
494 2001-08-24 Thien-Thi Nguyen <ttn@revel.glug.org>
496 * srfi-13.h (scm_string_map, scm_string_map_x,
497 scm_string_for_each): Reverse order of first two args.
498 (scm_string_for_each_index): New proc.
500 * srfi-13.c (scm_string_for_each): Reverse order of first 2 args.
501 (scm_string_for_each_index): New func.
503 * srfi-13.scm (string-for-each-index): New exported proc.
505 Thanks to Alex Shinn.
507 2001-08-22 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
509 * srfi-13.c (string-map): Swapped order of string and proc args to
510 conform with the srfi. (Thanks to Alex Shinn.)
512 2001-08-05 Gary Houston <ghouston@arglist.com>
514 * srfi-1.scm (check-arg-type, non-negative-integer?): a couple of new
515 internal definitions.
516 (list-tabulate, iota): check for bad arguments that otherwise
518 (filter): check for proper list, to avoid infinite recursion on
521 2001-08-04 Gary Houston <ghouston@arglist.com>
523 * srfi-1.scm (filter): replaced with a tail-recursive version.
524 (remove): implement using filter, to make it tail-recursive.
526 2001-07-31 Gary Houston <ghouston@arglist.com>
528 * srfi-14.c (scm_char_set_diff_plus_intersection): wasn't correctly
529 accounting for the (char-set-union cs2...) in the spec. i.e.,
530 (char-set-diff+intersection a) -> copy-of-a, empty-set
531 and the following are equivalent:
532 (char-set-diff+intersection a (char-set #\a) (char-set #\b))
533 (char-set-diff+intersection a (char-set #\a #\b))
535 (scm_char_set_xor_x): disabled the side-effecting code, since it
536 gives inconsistent results to scm_char_set_xor for the case
537 (char-set-xor! a a a).
539 (scm_char_set_diff_plus_intersection_x): added cs2 argument, since
540 two arguments are compulsory in final spec. also similar changes
541 as for scm_char_set_diff_plus_intersection.
542 * srfi-14.h (scm_char_set_diff_plus_intersection_x): added cs2.
544 2001-07-22 Gary Houston <ghouston@arglist.com>
546 * srfi-14.c (scm_char_set_intersection, scm_char_set_xor): remove
547 the compulsory cs1 arguments: all args are optional in final spec.
549 * srfi-14.h: declarations updated.
551 2001-07-18 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
553 * srfi-11.scm, srfi-8.scm: Update copyright notice.
555 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
557 * srfi-14.c: Okay. Now I got it. Really. This time it's fixed.
560 * srfi-19.scm: Define `current-time' before exporting it.
562 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
564 * srfi-14.c: Fix for bug caused by brain-malfunctioning on my
565 side. Bit sets were handled wrong because I couldn't tell bit
566 counts from byte counts. Also, the bit array should be 256 / 8
567 bytes long. Thank you, Gary!
569 Removed unnecessary protoype for scm_char_set_copy.
571 2001-07-16 Gary Houston <ghouston@arglist.com>
573 * srfi-14.scm: export string->char-set!, not string-char-set!.
575 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next,
576 scm_end_of_char_set_p): reject negative cursor values.
577 (scm_list_to_char_set, scm_list_to_char_set_x): when reporting
578 type error in list component, omit the position (was always 1).
580 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
582 (scm_char_set_map): Bug-fix: char-set-map was modifying the
583 argument instead of the return value.
585 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
587 * srfi-14.c: Allocate correct memory size for charsets (32 bytes),
588 use this value for initializing and comparing charsets.
589 (scm_char_set_hash): Use ``better'' hash algorithm which produces
592 2001-07-15 Gary Houston <ghouston@arglist.com>
594 * srfi-14.c (scm_char_set_hash): recognise 0 instead of #f in the
595 opt arg to give default bound, as in final spec. don't allow
597 (scm_char_set_hash): bug fix: was overrunning the buffer and
598 calculating based on garbage.
599 (scm_char_set_eq, scm_char_set_leq): fix argument number in error
600 reporting: wasn't incremented due to macro coding.
601 (scm_char_set): report argument number in error reporting: was
602 hard coded to 1. remove a couple of local variables.
604 2001-07-13 Marius Vollmer <mvo@zagadka.ping.de>
606 * srfi-2.scm (and-let*): Use `re-export-syntax' instead of
609 2001-07-11 Gary Houston <ghouston@arglist.com>
611 * srfi-14.c (s_scm_char_set_eq): bug fix: (char-set=) should
612 return #t instead of giving wrong-number-of-arguments . take a
613 single "rest" argument. use memcmp instead of a loop to compare
615 (s_scm_char_set_leq): similarly, (char-set<=) should return #t.
616 take a single "rest" argument.
617 srfi-14.h: update the declarations.
619 2001-07-09 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
623 2001-07-06 Gary Houston <ghouston@arglist.com>
625 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
626 delete!, assoc): roll back the previous change. instead place
627 dummy definitions in a deprecated block at the beginning as in
630 2001-07-06 Rob Browning <rlb@defaultvalue.org>
632 * srfi-19.scm (priv:locale-reader): don't need open-output-string.
634 2001-07-03 Gary Houston <ghouston@arglist.com>
636 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
637 delete!, assoc): don't export until the new bindings have been
638 created. otherwise "export" thinks they are being re-exported and
639 a deprecation warning is produced.
640 (map-in-order): defined and exported, to support lists of unequal
643 2001-07-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
645 * srfi-1.scm (list-tabulate): Do not go into infinite loop for
646 invalid arguments. Same fix for several other procedures (do not
647 use zero?, use <= 0).
649 2001-07-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
651 * srfi-1.scm: Replaced calls to `map' in several procedures to
653 (map, for-each): New procedures, extended from R5RS.
655 2001-06-28 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
657 * srfi-4.c: Minor cleanups.
659 * srfi-14.c (scm_char_set_fold, scm_char_set_unfold)
660 (scm_char_set_unfold_x, scm_char_set_for_each)
661 (scm_char_set_map, scm_char_set_filter)
662 (scm_char_set_filter_x, scm_char_set_count)
663 (scm_char_set_every, scm_char_set_any): Replace calls to
664 scm_apply() with the corresponding scm_call_N() functions.
666 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next)
667 (scm_char_set_unfold, scm_char_set_unfold_x)
668 (scm_char_set_map, scm_char_set_diff_plus_intersection)
669 (scm_char_set_diff_plus_intersection_x): Replace deprecated macros
670 SCM_LISTN with calls to scm_list_N().
672 * srfi-13.c (scm_string_tabulate, scm_string_map)
673 (scm_string_map_x, scm_string_unfold)
674 (scm_string_unfold_right): Replace deprecated macros SCM_LISTN
675 with calls to scm_list_N().
677 * srfi-13.c (scm_string_any, scm_string_every),
678 (scm_string_tabulate, scm_string_trim),
679 (scm_string_trim_right, scm_string_trim_both),
680 (scm_string_compare, scm_string_compare_ci),
681 (scm_string_indexS, scm_string_index_right),
682 (scm_string_skip, scm_string_skip_right, scm_string_count),
683 (scm_string_map, scm_string_map_x, scm_string_fold),
684 (scm_string_fold_right, scm_string_unfold),
685 (scm_string_unfold_right, scm_string_for_each),
686 (scm_string_filter, scm_string_delete): Replace calls to
687 scm_apply() with the corresponding scm_call_N() functions.
689 2001-06-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
691 * Makefile.am: Added SRFI-4 files in various places.
693 * srfi-4.c, srfi-4.h, srfi-4.scm: New files implementing SRFI-4.
695 2001-06-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
697 * srfi-13.c (scm_string_copyS, scm_string_take, scm_string_drop,
698 scm_string_take_right, scm_string_drop_right, scm_string_trim,
699 scm_string_trim_right, scm_string_trim_both, scm_string_tokenize):
700 Use scm_mem2string instead of scm_makfromstr.
702 (scm_reverse_list_to_string, string_titlecase_x): Prefer
703 !SCM_<pred> over SCM_N<pred>.
705 2001-06-25 Marius Vollmer <mvo@zagadka.ping.de>
707 * srfi-8.scm: Use `re-export-syntax' to correctly re-export
710 2001-06-18 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
712 The SRFI-19 implementation was completely broken. Already the
713 reference implementation did not handle DST and time zones
714 properly and relied on non-R5RS-isms like passing reals to
715 `quotient'. For Guile, some additional fixes were needed because
716 of the incomplete numeric tower implementation. See also
719 * srfi-19.scm (date-zone-offset): Fixed typo in export clause.
720 (add-duration): Renamed from priv:add-duration.
721 (priv:time-normalize!): Handle fractional nanoseconds; remove
722 duplicate definition.
723 (priv:current-time-tai): Fixed typo.
724 (time=?, time<=?): Fixed typos.
725 (time-tai->time-utc, time-utc->time-tai,
726 time-utc->time-monotonic): Use make-time-unnormalized instead of
727 make-time when uninitialized time fields are used.
728 (set-date-nanosecond!, set-date-second!, set-date-minute!,
729 set-date-hour!, set-date-day!, set-date-month!, set-date-year!,
730 set-date-zone-offset!): Define.
731 (priv:local-tz-offset): Take an extra argument in order to handle
733 (time-utc->date, time-tai->date, time-monotonic->date): Handle the
734 changed signature of priv:local-tz-offset. Don't pass non-integer
735 arguments to quotient (non-R5RS, not supported by Guile).
736 (date->time-utc): Ensure that seconds in a date structure are
737 always exact integers. Handle DST properly.
738 (current-date, julian-day->date, modified-julian-day->date):
739 Handle the changed signature of priv:local-tz-offset.
740 (julian-day->time-utc): Reverted earlier inexact->exact hack;
741 make-time now handles inexact arguments.
742 (priv:locale-print-time-zone): At least print the numerical time
744 (priv:integer-reader): Fixed named let iteration.
745 (priv:read-directives): Use set-date-month! instead of
746 priv:set-date-month! etc.
747 (string->date): Handle DST properly.
749 2001-06-14 Marius Vollmer <mvo@zagadka.ping.de>
751 * srfi-13.scm: Prevent `export' from re-exporting core bindings.
753 2001-06-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
755 * srfi-14.c (charset_print): Mark unused parameters with
758 2001-06-07 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
760 * srfi-1.scm (fold, fold-pair): Fixed a buggy call to apply.
761 (delete-duplicates): Now the first occurrence of an element is
762 retained, as required.
763 (member, assoc): Fixed wrong order of equality predicate
766 2001-06-06 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
770 * srfi-1.scm: New file.
772 2001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
774 Added exception notice to all files.
776 2001-05-31 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
778 * srfi-14.scm, srfi-13.scm: Use `load-extension' for loading the
781 2001-05-31 Michael Livshin <mlivshin@bigfoot.com>
783 * Makefile.am (MKDEP): copied from libguile/Makefile.am, just in
785 (CLEANFILES): added *.x (and removed from DISTCLEANFILES)
787 2001-05-28 Michael Livshin <mlivshin@bigfoot.com>
789 * srfi-19.scm: removed a stray open parenthesis. (thanks to
790 Matthias Köppe for the report).
792 2001-05-23 Rob Browning <rlb@cs.utexas.edu>
794 * srfi-19.scm (:optional): renamed to optional to avoid reader
795 keywords conflict. Time passes... Removed :optional altogether
796 and just handle optional args directly. Thanks to Matthias Koeppe
797 for the report of this and the two bits below.
798 (priv:decode-julian-day-number): add inexact->exact for truncate
800 (time-utc->date): add inexact->exact and floor so quotient will
803 2001-05-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
805 * README: Update, document available SRFIs.
807 2001-05-21 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
809 * srfi-19.scm, srfi-17.scm, srfi-16.scm, srfi-14.scm, srfi-13.scm,
810 srfi-11.scm, srfi-10.scm, srfi-9.scm, srfi-8.scm, srfi-6.scm,
811 srfi-2.scm: Use `cond-expand-provide' for providing features to
814 2001-05-20 Marius Vollmer <mvo@zagadka.ping.de>
816 * srfi-14.c (scm_c_init_srfi_14): Added "int" to declaration of
819 2001-05-19 Marius Vollmer <mvo@zagadka.ping.de>
821 Avoid using module operations from C.
823 * srfi-13.c (scm_init_srfi_13_14): Removed.
824 * srfi-14.h, srfi-14.c (scm_c_init_srfi_14): New. Contains
825 initializations needed by C clients of srfi-14.
826 (scm_init_srfi_13, scm_init_srfi_14): Call it.
827 * srfi-13.scm: Call "scm_init_srfi_13" instead of
828 "scm_init_srfi_13_14".
829 * srfi-14.scm: Call "scm_init_srfi_14" instead of
830 "scm_init_srfi_13_14".
832 2001-05-16 Rob Browning <rlb@cs.utexas.edu>
834 * srfi-19.scm (priv:integer-reader-exact): minor cleanups.
836 2001-05-14 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
838 * Makefile.am (srfi_DATA): Added srfi-16.scm.
840 * srfi-16.scm: New file.
842 2001-05-10 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
844 * srfi-13.c (scm_string_delete): Logic was inversed for charset.
847 2001-05-08 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
849 * srfi-13.c (scm_string_copyS): Fixed nasty bug.
851 2001-05-05 Rob Browning <rlb@cs.utexas.edu>
853 * Makefile.am (srfi_DATA): added srfi-19.scm.
855 * srfi-19.scm: New file - time/date SRFI. Thanks to Will
858 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
860 * srfi-14.c, srfi-13.c: Added @bullet to various @itemize lists.
862 * srfi-10.scm: Typo fix.
864 2001-05-02 Rob Browning <rlb@cs.utexas.edu>
866 * srfi-11.scm (let-values): fix (a b c . d) case. Thanks Martin.
868 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
870 * Makefile.am (srfi_DATA): Added srfi-10.scm and srfi-17.scm.
872 * srfi-10.scm: New file.
874 * srfi-17.scm: New file, contributed by Matthias Koeppe. Thanks a
876 Added `Commentary:' tag.
878 * srfi-9.scm: Added `Commentary:' tag.
880 2001-04-27 Rob Browning <rlb@cs.utexas.edu>
883 (scm_reverse_string_concatenate): renamed to
884 scm_string_concatentate_reverse.
885 (scm_reverse_string_concatenate_shared): renamed to
886 scm_string_concatenate_reverse_shared.
888 2001-04-27 Gary Houston <ghouston@arglist.com>
890 * srfi-13.c (scm_init_srfi_13), srfi-14.c (scm_init_srfi_14):
891 add "srfi/" to lines including .x files so they can be found
892 when build_dir != src_dir.
894 2001-04-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
896 * Makefile.am (srfi_DATA): Added srfi-9.scm.
898 * srfi-9.scm: New file. Exports `define-record-type'.
900 2001-04-26 Rob Browning <rlb@cs.utexas.edu>
902 * Makefile.am (srfi_DATA): added srfi-6.scm.
903 (srfi_DATA): added srfi-11.scm.
904 (srfi_DATA): added srfi-8.scm.
905 (srfi_DATA): added srfi-2.scm.
907 * srfi-11.scm: new file - exports let-values and let*-values.
909 * srfi-6.scm: new file - guile already has srfi-6 procedures
910 loaded by default, so this is a dummy file right now.
912 * srfi-8.scm: new file - exports receive.
914 * srfi-2.scm: new file - just use/export (ice-9 and-let-star)
916 2001-04-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
918 Changed two procedure names to match final SRFI document. Thanks
919 to Rob Browning for spotting this.
921 * srfi-13.scm (string-concatenate-reverse),
922 (string-concatenate-reverse/shared): Rename from
923 reverse-string-concatenate[/shared].
925 * srfi-13.c (scm_string_concatenate_reverse_shared): Renamed from
926 scm_reverse_string_concatenate_shared.
927 (scm_string_concatenate_reverse): Renamed from
928 scm_reverse_string_concatenate.
930 2001-04-25 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
932 * configure.in, autogen.sh: Removed.
934 * srfi-13.c (scm_string_replace): Take sizeof (char) into account
935 when using memmove().
937 * srfi-14.h: Added prototypes for all exported procedures..
939 * srfi-13.c: Include srfi-13.h
941 * srfi-13.h: New file containing the prototypes.
943 * Makefile.am: Removed guile-srfi.texi and info_TEXINFOS variable.
944 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-14.h, so it gets
946 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-13.h.
948 2001-04-24 Neil Jerram <neil@ossau.uklinux.net>
950 * Makefile.am: Fixed "srf-14.x" typo.
952 2001-04-24 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
954 * guile-srfi.texi: Removed, because merged with the GRM.
956 * guile-srfi.texi: The docs are now up to date with the
957 implementation and have new introductory material.
959 2001-04-23 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
961 Integrated the guile-srfi package into the Guile distribution.
963 * srfi-13.c: All procedures so specified in the SRFI now accept
964 character set arguments.
966 * Makefile.am: Snarfed some variables from the guile-readline
969 * srfi-14.c, srfi-14.h: Add prefix SCM_ to exported macros.
971 * srfi-13.scm, srfi-14.scm, srfi-13.c, srfi-14.c, srfi-14.h,
972 configure.in, Makefile.am: Added FSF copyright and Guile license
975 * srfi-13.c, srfi-14.c: Include srfi-14.h.
976 (scm_init_srfi_13_14): Initialize the complete module, if not
979 * srfi-14.h: New file.
981 * srfi-13.scm, srfi-14.scm: Load new combined library.
983 * Makefile.am: Build only one library,
984 `libguile-srfi-srfi-13-14.la'
986 2001-04-04 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
988 * guile-srfi.texi: Integrated the SRFI-14 documentation.
990 * srfi-14.c, srfi-14.scm: Made the procedures and variables
991 compliant to the final SRFI document.
993 * Renamed the package to guile-srfi.
995 2001-04-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
997 * NEWS: New section for 0.0.3.
999 * configure.in, README, guile-srfi-13.texi: Bumped version number
1002 * Released version 0.0.2.
1004 * Makefile.am: Added rules for builing the SRFI-14 library.
1006 * srfi-14.c, srfi-14.scm: New files, implementing SRFI-14
1007 (character set library).
1009 2001-03-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1011 * README: Updated procedure and incompatibility list.
1013 * srfi-13.c (string_upcase_x, scm_string_upcase_xS),
1014 (scm_string_upcase, string_downcase_x, scm_string_downcase_xS),
1015 (scm_string_downcaseS, string_titlecase_x),
1016 (scm_string_titlecase_x, scm_string_titlecase),
1017 (scm_string_fill_xS, scm_string_copyS, scm_string_to_listS): New
1020 * srfi-13.scm: Export new case mapping procedures.
1022 * guile-srfi-13.texi (What cannot be done): Removed case mapping
1023 procedures from incompatibility list.
1024 (Case Mapping): New section for case mapping procedures.
1026 2001-03-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1028 * NEWS: New section for 0.0.2
1030 * configure.in, README, guile-srfi-13.texi: Bumbed version number
1033 * Released version 0.0.1.
1035 * README: Made procedure list up-to-date.
1037 * guile-srfi-13.texi: Fixed typos, completed reference and added
1040 * srfi-13.c, srfi-13.scm: Filled in the last missing pieces.
1042 2001-03-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1044 * Started guile-srfi-13 package. Files are copied from the
1045 guile-gdbm and slightly modified.