1 2004-08-15 Marius Vollmer <mvo@zagadka.de>
3 * srfi-39.scm: New, from Jose A Ortega Ruiz. Thanks!
5 2004-08-14 Kevin Ryde <user42@zip.com.au>
7 * srfi-13.c (scm_string_any, scm_string_every): Add support for char
8 and charset as predicates, per SRFI-13 spec.
10 2004-08-12 Marius Vollmer <marius.vollmer@uni-dortmund.de>
12 * srfi-13.c (MY_VALIDATE_SUBSTRING_SPEC_COPY,
13 MY_VALIDATE_STRING_COPY): Modernized clones of the deprecated
14 validation macros. Replaced every use.
16 2004-08-05 Kevin Ryde <user42@zip.com.au>
18 * srfi-13.c (scm_string_any, scm_string_every): Enhance docstrings as
19 per doc/ref/srfi-modules.texi.
21 2004-08-02 Marius Vollmer <marius.vollmer@uni-dortmund.de>
23 * srfi-4.c: Replaced scm_num2* and scm_*2num with scm_to_* and
24 scm_from_*, respectively.
25 (print_int64, print_uint64): Rewritten by just calling scm_iprin1
28 2004-08-02 Kevin Ryde <user42@zip.com.au>
30 * srfi-13.c (scm_string_every): Correction to initial "res" value,
31 return should be #t for an empty string. Reported by Andreas Vögele.
33 2004-07-10 Marius Vollmer <marius.vollmer@uni-dortmund.de>
35 * srfi-13.c, srfi-14.c, srfi-4.c: Changed all uses of
36 SCM_VALIDATE_INUM, SCM_VALIDATE_INUM_COPY, SCM_VALIDATE_BIGINT,
37 SCM_VALIDATE_INUM_MIN, SCM_VALIDATE_INUM_MIN_COPY,
38 SCM_VALIDATE_INUM_MIN_DEF_COPY,SCM_VALIDATE_INUM_DEF,
39 SCM_VALIDATE_INUM_DEF_COPY, SCM_VALIDATE_INUM_RANGE,
40 SCM_VALIDATE_INUM_RANGE_COPY to scm_to_size_t or similar.
42 2004-07-06 Marius Vollmer <marius.vollmer@uni-dortmund.de>
44 * srfi-1.c, srfi-13.c, srfi-14.c, srfi-4.c: Replaced all uses of
45 deprecated SCM_FALSEP, SCM_NFALSEP, SCM_BOOL, SCM_NEGATE_BOOL, and
46 SCM_BOOLP with scm_is_false, scm_is_true, scm_from_bool, and
47 scm_is_bool, respectively.
49 2004-07-05 Kevin Ryde <user42@zip.com.au>
51 * srfi-4.c (uvec_sizes): Add "const".
53 * srfi-31.scm: Correction to heading comment.
55 2004-06-20 Rob Browning <rlb@defaultvalue.org>
57 * srfi-4.c: fix #ifdef checks for 64-bit types; should be #if.
58 Add separate symmetric test for SCM_HAVE_T_UINT64 in one case.
59 (uvec_print): rewrite using a union to make more
60 compact, and use static print_uint64 and print_int64 to print
62 (print_int64): new static function (temporary fix).
63 (print_uint64): new static function (temporary fix).
65 * Makefile.am (srfi_DATA): add srfi-31.scm.
67 * srfi-31.scm: new file.
69 2004-04-24 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
71 * srfi-17.scm (setter, car, cdr etc.): When within one define
72 expression a new variable in the local module is defined in terms
73 of an equally named variable from some other module, use @ to
74 refer to the variable in the other module. This is necessary due
75 to section 5.2.1 of R5RS: In a define expression first the new
76 binding is created and then the expression is evaluated.
78 2004-04-24 Kevin Ryde <user42@zip.com.au>
80 * srfi-11.scm (let-values): Use make-symbol rather than gensym, for
81 guaranteed uniqueness of temp variable symbols.
83 2004-04-15 Kevin Ryde <user42@zip.com.au>
85 * srfi-13.c (scm_string_trim, scm_string_trim_right,
86 scm_string_trim_both): Cast to unsigned char for isspace.
88 2004-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
90 * srfi-13.c (s_scm_string_map): convert character to unsigned char
91 before converting to unsigned int. This prevents hi-bit ascii as
92 being converted large integers.
93 (string_upcase_x): change caller for scm_{up,down}case to
96 2004-03-23 Kevin Ryde <user42@zip.com.au>
98 * srfi-1.scm (circular-list): Rewrite using set-cdr!, no need to copy
101 2004-02-08 Mikael Djurfeldt <djurfeldt@nada.kth.se>
103 * Makefile.am (TAGS_FILES): Use this variable instead of
104 ETAGS_ARGS so that TAGS can be built using separate build
107 2004-01-24 Marius Vollmer <mvo@zagadka.de>
109 * Makefile.am (srfi_DATA): Added srfi-26.scm.
111 2004-01-21 Marius Vollmer <m.vollmer@ping.de>
113 * srfi-26.scm: New, from Daniel Skarda. Thanks!
115 2003-12-03 Kevin Ryde <user42@zip.com.au>
117 * srfi-1.c, srfi-1.h, srfi-1.scm (count): Rewrite in C, avoiding
120 * srfi-1.scm (map!): Define as an alias for map, previous definition
121 was not tail-recursive.
123 2003-08-23 Kevin Ryde <user42@zip.com.au>
125 * srfi-1.c, srfi-1.h, srfi-1.scm (list-copy): New function, derived
126 from core list-copy but allowing improper lists, per SRFI-1 spec.
128 * srfi-19.scm (date-week-number): Correction, day of week starting
129 week applied was off by one.
131 2003-07-29 Kevin Ryde <user42@zip.com.au>
133 * srfi-1.c, srfi-1.scm (concatenate, concatenate!): Use scm_append and
136 * srfi-1.c, srfi-1.h, srfi-1.scm (length+): Rewrite using scm_ilength.
138 * srfi-34.scm: Add cond-expand-provide srfi-34.
140 2003-07-14 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
142 * srfi-1.c, srfi-1.h (scm_srfi1_partition), srfi-1.scm (partition):
143 Re-implement in C to avoid stack overflows for long input lists.
145 2003-07-08 Kevin Ryde <user42@zip.com.au>
147 * srfi-1.c, srfi-1.h (scm_srfi1_delete, scm_srfi1_delete_x,
148 scm_srfi1_delete_duplicates, scm_srfi1_delete_duplicates_x): New
149 functions. scm_srfi1_delete_x is derived from scm_delete_x.
150 * srfi-1.scm (delete, delete!, delete-duplicates, delete-duplicates!):
153 2003-06-07 Kevin Ryde <user42@zip.com.au>
155 * srfi-6.scm: #:re-export open-input-string, open-output-string and
156 get-output-string, for the benefit of applications wanting to use
157 #:select on the module.
159 2003-05-29 Stefan Jahn <stefan@lkcc.org>
161 * Makefile.am (libguile_srfi_srfi_1_la_LDFLAGS,
162 libguile_srfi_srfi_4_la_LDFLAGS,
163 libguile_srfi_srfi_13_14__la_LDFLAGS): Added the -no-undefined
164 option for the mingw32 build.
166 2003-05-13 Kevin Ryde <user42@zip.com.au>
168 * srfi-1.scm (delete): Fix predicate arg order to match srfi-1 spec.
170 2003-05-10 Kevin Ryde <user42@zip.com.au>
172 * srfi-1.scm (take): Make this an alias for list-head.
173 (drop): Make this an alias for list-tail.
175 2003-04-30 Neil Jerram <neil@ossau.uklinux.net>
177 * srfi-34.scm: New file.
179 2003-04-23 Marius Vollmer <mvo@zagadka.de>
181 * srfi-1.scm: Removed stray "o" from exports list.
183 2003-04-21 Dirk Herrmann <D.Herrmann@tu-bs.de>
185 * srfi-1.c (srfi1_ilength): Prefer !SCM_CONSP over SCM_NCONSP.
186 Now, guile itself does not include any calls to SCM_NCONSP any
189 2003-04-05 Marius Vollmer <mvo@zagadka.de>
191 * Changed license terms to the plain LGPL thru-out.
193 2003-03-25 Rob Browning <rlb@defaultvalue.org>
195 * srfi-4.c: replace typedefs for basic types with typedefs using
196 new standard int types (i.e. scm_t_uint8, etc.) -- should probably
197 remove typedefs altogether later.
199 2003-03-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
201 * srfi-1.scm: Re-export all srfi-1 bindings implemented by the
202 core. (Thanks to Kevin Ryde.)
204 2003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
206 * srfi-13.scm: Mark replacements.
208 * srfi-17.scm: Mark replacements.
210 2003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
212 * srfi-1.scm (iota, map, for-each, map-in-order, list-index,
213 member, delete, delete!, assoc): Marked as replacements.
214 (filter, filter!): Removed. (Now implemented in the core.)
216 2003-03-06 Mikael Djurfeldt <djurfeldt@nada.kth.se>
218 * srfi-1.c (scm_init_srfi_1): Extend root module map and for-each
219 with the versions in this module using
220 scm_c_extend_primitive_generic.
222 2003-02-03 Mikael Djurfeldt <djurfeldt@nada.kth.se>
224 * srfi-1.c (srfi1_for_each): Corrected argument checking for the
225 case of two argument lists. (Thanks to Kevin Ryde.)
227 2002-12-08 Rob Browning <rlb@defaultvalue.org>
229 * Makefile.am (srfidir): VERSION -> GUILE_EFFECTIVE_VERSION.
231 2002-12-02 Marius Vollmer <mvo@zagadka.ping.de>
233 * Makefile.am (srfiinclude_HEADERS): Added srfi-1.h.
235 2002-12-01 Mikael Djurfeldt <mdj@linnaeus>
237 * srfi-1.scm: Load srfi-1 extension.
238 (map, map-in-order, for-each, member, assoc): Replaced by
239 primitives in srfi-1.c.
240 (map1): Defined as `map'.
242 * Makefile.am: Added rules for srfi-1.c.
244 * srfi-1.c, srfi-1.h: New files.
246 2002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
248 * srfi-13.c (scm_string_tokenize): Instead of using "isgraphic" as
249 the subtitute for char-set:graphic when then token-set hsa been
250 defaulted, grab the real char-set:graphic from (srfi srfi-14).
252 * srfi-14.h (SCM_CHARSET_GET): Cast IDX to unsigned char so that
253 it works for 8-bit characters. Thanks to Matthias Koeppe! No,
256 2002-04-24 Marius Vollmer <mvo@zagadka.ping.de>
258 * srfi-13.c (s_scm_string_tokenize): Only take character sets as
259 the second arg. Collect characters belonging to this set into
260 tokens (as specified by the SRFI), instead of splitting at these
261 characters. Default to an equivalent of char-set:graphic instead
262 of everything-but-whitespace. Thanks to Matthias Koeppe!
264 2002-04-10 Rob Browning <rlb@defaultvalue.org>
266 * .cvsignore: add *.c.clean.c.
268 2002-03-27 Thien-Thi Nguyen <ttn@giblet.glug.org>
270 * srfi-1.scm, srfi-13.scm, srfi-17.scm, srfi-4.scm, srfi-9.scm,
271 srfi-10.scm, srfi-14.scm, srfi-19.scm, srfi-6.scm, srfi-11.scm,
272 srfi-16.scm, srfi-2.scm, srfi-8.scm: Update copyright.
273 Point to manual in commentary; nfc.
275 2002-03-24 Marius Vollmer <mvo@zagadka.ping.de>
277 * Makefile.am (.c.x): Pass "-o $@" to guile-snarf.
279 2002-03-13 Thien-Thi Nguyen <ttn@giblet.glug.org>
281 * srfi-13.c, srfi-14.c, srfi-4.c:
282 Retire inclusion guard macro SCM_MAGIC_SNARFER.
284 * Makefile.am (snarfcppopts): New var.
285 (.c.x): Use $(snarfcppopts). Rework guile-snarf usage.
287 2002-03-11 Marius Vollmer <mvo@zagadka.ping.de>
289 * srfi-13.c (string_titlecase_x): Treat characters as unsigned so
290 that 8-bit chars work. Thanks to David Pirotte!
292 2002-02-24 Rob Browning <rlb@defaultvalue.org>
294 * Makefile.am (libguile_srfi_srfi_4_la_LDFLAGS): use
295 @LIBGUILE_SRFI_SRFI_4_INTERFACE@.
296 (libguile_srfi_srfi_13_14_la_LDFLAGS): use
297 @LIBGUILE_SRFI_SRFI_13_14_INTERFACE@.
299 2002-02-23 Neil Jerram <neil@ossau.uklinux.net>
301 * srfi-19.scm (priv:month-assoc): Correct numbers so that they
302 match the expectations of priv:year-day.
304 2002-02-22 Neil Jerram <neil@ossau.uklinux.net>
306 * srfi-19.scm (priv:year-day): Index into priv:month-assoc using
307 month number, not day number. (Thanks to Sébastien de Menten de
308 Horne for reporting the problem.)
310 2002-02-11 Marius Vollmer <marius.vollmer@uni-dortmund.de>
312 * srfi-14.c, srfi-4.c: Use scm_gc_malloc/scm_malloc and
313 scm_gc_free/free instead of scm_must_malloc and scm_must_free, as
316 2002-01-21 Thien-Thi Nguyen <ttn@giblet.glug.org>
318 * srfi-1.scm (count1, take-while): Rewrite to be tail-recursive.
319 Thanks to Panagiotis Vossos.
321 2002-01-20 Thien-Thi Nguyen <ttn@giblet.glug.org>
323 * srfi-1.scm (map1): Rewrite to be tail-recursive.
324 Thanks to Panagiotis Vossos for the bug report.
326 2001-12-16 Marius Vollmer <mvo@zagadka.ping.de>
328 * srfi-11.scm (let-values): Use `gensym' instead of `gentemp'.
330 2001-11-30 Neil Jerram <neil@ossau.uklinux.net>
332 * Makefile.am (ETAGS_ARGS): Added.
334 2001-11-12 Marius Vollmer <mvo@zagadka.ping.de>
336 * srfi-4.c: Use HAVE_LONG_LONG instead of HAVE_LONG_LONGS and test
337 it with `#ifdef' instead of `#if'.
339 2001-11-07 Neil Jerram <neil@ossau.uklinux.net>
341 * srfi-13.c (scm_string_unfold, scm_string_unfold_right),
342 srfi-14.c (scm_char_set_unfold, scm_char_set_unfold_x): Remove
343 superfluous whitespace at end of docstring lines.
345 2001-11-06 Thien-Thi Nguyen <ttn@glug.org>
347 * srfi-19.scm (time-monotonic->time-monotonic): Spurious;
350 2001-11-04 Stefan Jahn <stefan@lkcc.org>
352 * srfi-13.h, srfi-14.h, srfi-4.h: Follow-up patch. Renamed
353 __FOO__ macros into FOO.
355 2001-11-03 Marius Vollmer <mvo@zagadka.ping.de>
357 * Makefile.am (libguile_srfi_srfi_4_la_LIBADD,
358 libguile_srfi_srfi_13_14_la_LIBADD): Refer to build directory, not
359 the source directory, for libguile.la. Thanks to Ken Raeburn.
361 2001-11-02 Marius Vollmer <mvo@zagadka.ping.de>
363 Support for native Win32. Thanks to Stefan Jahn!
365 * Makefile.am: Put `-no-undefined' into LDFLAGS to support linkers
366 which do not allow unresolved symbols inside shared libraries.
368 * srfi-13.h, srfi-14.h: Defined SCM_SRFI1314_API. Prefixed each
369 exported symbol with SCM_SRFI1314_API.
371 * srfi-4.h: Defined SCM_SRFI4_API. Prefixed each exported
372 symbol with SCM_SRFI4_API.
374 2001-10-21 Mikael Djurfeldt <mdj@linnaeus>
376 * srfi-2.scm, srfi-4.scm, srfi-8.scm, srfi-9.scm, srfi-10.scm,
377 srfi-11.scm, srfi-14.scm, srfi-16.scm: Move module the system
378 directives `export', `export-syntax', `re-export' and
379 `re-export-syntax' into the `define-module' form. This is the
380 recommended way of exporting bindings.
382 2001-09-22 Mikael Djurfeldt <mdj@linnaeus>
384 * srfi-19.scm (priv:split-real): Inserted missing call to
387 2001-09-21 Rob Browning <rlb@defaultvalue.org>
389 * srfi-14.h (SCM_CHARSET_GET): need 1L, not just 1 in "<<".
391 * srfi-14.c (SCM_CHARSET_SET): need 1L, not just 1 in "<<".
392 (scm_char_set_hash): val needs to be long, not just unsigned.
393 (scm_char_set): need 1L, not just 1 in "<<".
394 (scm_list_to_char_set): need 1L, not just 1 in "<<".
395 (scm_list_to_char_set_x): need 1L, not just 1 in "<<".
396 (scm_list_to_char_set_x): FUNC_NAME was wrong - added a _x.
397 (scm_string_to_char_set): string length var needed to be
399 (scm_string_to_char_set): need 1L, not just 1 in "<<".
400 (scm_string_to_char_set_x): string length var needed to be
402 (scm_string_to_char_set_x): need 1L, not just 1 in "<<".
403 (scm_char_set_filter): need 1L, not just 1 in "<<".
404 (scm_char_set_filter_x): need 1L, not just 1 in "<<".
405 (scm_ucs_range_to_char_set): need 1L, not just 1 in "<<".
406 (scm_ucs_range_to_char_set_x): need 1L, not just 1 in "<<".
407 (scm_char_set_adjoin): need 1L, not just 1 in "<<".
408 (scm_char_set_delete): need 1L, not just 1 in "<<".
409 (scm_char_set_adjoin_x): need 1L, not just 1 in "<<".
410 (scm_char_set_delete_x): need 1L, not just 1 in "<<".
412 2001-09-12 Gary Houston <ghouston@arglist.com>
414 * srfi-1.scm (filter): change "caller" to "filter" in check-arg-type.
416 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
418 * srfi-1.scm, srfi-13.scm: Remove the defines that were needed to
419 trick export from the beginning of the files.
421 2001-08-25 Thien-Thi Nguyen <ttn@revel.glug.org>
423 * srfi-19.scm (add-duration): Fix bug: Call `add-duration!' w/
424 two args. Thanks to Alex Shinn.
426 2001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
428 * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu".
430 2001-08-24 Thien-Thi Nguyen <ttn@revel.glug.org>
432 * srfi-13.h (scm_string_map, scm_string_map_x,
433 scm_string_for_each): Reverse order of first two args.
434 (scm_string_for_each_index): New proc.
436 * srfi-13.c (scm_string_for_each): Reverse order of first 2 args.
437 (scm_string_for_each_index): New func.
439 * srfi-13.scm (string-for-each-index): New exported proc.
441 Thanks to Alex Shinn.
443 2001-08-22 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
445 * srfi-13.c (string-map): Swapped order of string and proc args to
446 conform with the srfi. (Thanks to Alex Shinn.)
448 2001-08-05 Gary Houston <ghouston@arglist.com>
450 * srfi-1.scm (check-arg-type, non-negative-integer?): a couple of new
451 internal definitions.
452 (list-tabulate, iota): check for bad arguments that otherwise
454 (filter): check for proper list, to avoid infinite recursion on
457 2001-08-04 Gary Houston <ghouston@arglist.com>
459 * srfi-1.scm (filter): replaced with a tail-recursive version.
460 (remove): implement using filter, to make it tail-recursive.
462 2001-07-31 Gary Houston <ghouston@arglist.com>
464 * srfi-14.c (scm_char_set_diff_plus_intersection): wasn't correctly
465 accounting for the (char-set-union cs2...) in the spec. i.e.,
466 (char-set-diff+intersection a) -> copy-of-a, empty-set
467 and the following are equivalent:
468 (char-set-diff+intersection a (char-set #\a) (char-set #\b))
469 (char-set-diff+intersection a (char-set #\a #\b))
471 (scm_char_set_xor_x): disabled the side-effecting code, since it
472 gives inconsistent results to scm_char_set_xor for the case
473 (char-set-xor! a a a).
475 (scm_char_set_diff_plus_intersection_x): added cs2 argument, since
476 two arguments are compulsory in final spec. also similar changes
477 as for scm_char_set_diff_plus_intersection.
478 * srfi-14.h (scm_char_set_diff_plus_intersection_x): added cs2.
480 2001-07-22 Gary Houston <ghouston@arglist.com>
482 * srfi-14.c (scm_char_set_intersection, scm_char_set_xor): remove
483 the compulsory cs1 arguments: all args are optional in final spec.
485 * srfi-14.h: declarations updated.
487 2001-07-18 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
489 * srfi-11.scm, srfi-8.scm: Update copyright notice.
491 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
493 * srfi-14.c: Okay. Now I got it. Really. This time it's fixed.
496 * srfi-19.scm: Define `current-time' before exporting it.
498 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
500 * srfi-14.c: Fix for bug caused by brain-malfunctioning on my
501 side. Bit sets were handled wrong because I couldn't tell bit
502 counts from byte counts. Also, the bit array should be 256 / 8
503 bytes long. Thank you, Gary!
505 Removed unnecessary protoype for scm_char_set_copy.
507 2001-07-16 Gary Houston <ghouston@arglist.com>
509 * srfi-14.scm: export string->char-set!, not string-char-set!.
511 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next,
512 scm_end_of_char_set_p): reject negative cursor values.
513 (scm_list_to_char_set, scm_list_to_char_set_x): when reporting
514 type error in list component, omit the position (was always 1).
516 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
518 (scm_char_set_map): Bug-fix: char-set-map was modifying the
519 argument instead of the return value.
521 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
523 * srfi-14.c: Allocate correct memory size for charsets (32 bytes),
524 use this value for initializing and comparing charsets.
525 (scm_char_set_hash): Use ``better'' hash algorithm which produces
528 2001-07-15 Gary Houston <ghouston@arglist.com>
530 * srfi-14.c (scm_char_set_hash): recognise 0 instead of #f in the
531 opt arg to give default bound, as in final spec. don't allow
533 (scm_char_set_hash): bug fix: was overrunning the buffer and
534 calculating based on garbage.
535 (scm_char_set_eq, scm_char_set_leq): fix argument number in error
536 reporting: wasn't incremented due to macro coding.
537 (scm_char_set): report argument number in error reporting: was
538 hard coded to 1. remove a couple of local variables.
540 2001-07-13 Marius Vollmer <mvo@zagadka.ping.de>
542 * srfi-2.scm (and-let*): Use `re-export-syntax' instead of
545 2001-07-11 Gary Houston <ghouston@arglist.com>
547 * srfi-14.c (s_scm_char_set_eq): bug fix: (char-set=) should
548 return #t instead of giving wrong-number-of-arguments . take a
549 single "rest" argument. use memcmp instead of a loop to compare
551 (s_scm_char_set_leq): similarly, (char-set<=) should return #t.
552 take a single "rest" argument.
553 srfi-14.h: update the declarations.
555 2001-07-09 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
559 2001-07-06 Gary Houston <ghouston@arglist.com>
561 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
562 delete!, assoc): roll back the previous change. instead place
563 dummy definitions in a deprecated block at the beginning as in
566 2001-07-06 Rob Browning <rlb@defaultvalue.org>
568 * srfi-19.scm (priv:locale-reader): don't need open-output-string.
570 2001-07-03 Gary Houston <ghouston@arglist.com>
572 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
573 delete!, assoc): don't export until the new bindings have been
574 created. otherwise "export" thinks they are being re-exported and
575 a deprecation warning is produced.
576 (map-in-order): defined and exported, to support lists of unequal
579 2001-07-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
581 * srfi-1.scm (list-tabulate): Do not go into infinite loop for
582 invalid arguments. Same fix for several other procedures (do not
583 use zero?, use <= 0).
585 2001-07-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
587 * srfi-1.scm: Replaced calls to `map' in several procedures to
589 (map, for-each): New procedures, extended from R5RS.
591 2001-06-28 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
593 * srfi-4.c: Minor cleanups.
595 * srfi-14.c (scm_char_set_fold, scm_char_set_unfold)
596 (scm_char_set_unfold_x, scm_char_set_for_each)
597 (scm_char_set_map, scm_char_set_filter)
598 (scm_char_set_filter_x, scm_char_set_count)
599 (scm_char_set_every, scm_char_set_any): Replace calls to
600 scm_apply() with the corresponding scm_call_N() functions.
602 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next)
603 (scm_char_set_unfold, scm_char_set_unfold_x)
604 (scm_char_set_map, scm_char_set_diff_plus_intersection)
605 (scm_char_set_diff_plus_intersection_x): Replace deprecated macros
606 SCM_LISTN with calls to scm_list_N().
608 * srfi-13.c (scm_string_tabulate, scm_string_map)
609 (scm_string_map_x, scm_string_unfold)
610 (scm_string_unfold_right): Replace deprecated macros SCM_LISTN
611 with calls to scm_list_N().
613 * srfi-13.c (scm_string_any, scm_string_every),
614 (scm_string_tabulate, scm_string_trim),
615 (scm_string_trim_right, scm_string_trim_both),
616 (scm_string_compare, scm_string_compare_ci),
617 (scm_string_indexS, scm_string_index_right),
618 (scm_string_skip, scm_string_skip_right, scm_string_count),
619 (scm_string_map, scm_string_map_x, scm_string_fold),
620 (scm_string_fold_right, scm_string_unfold),
621 (scm_string_unfold_right, scm_string_for_each),
622 (scm_string_filter, scm_string_delete): Replace calls to
623 scm_apply() with the corresponding scm_call_N() functions.
625 2001-06-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
627 * Makefile.am: Added SRFI-4 files in various places.
629 * srfi-4.c, srfi-4.h, srfi-4.scm: New files implementing SRFI-4.
631 2001-06-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
633 * srfi-13.c (scm_string_copyS, scm_string_take, scm_string_drop,
634 scm_string_take_right, scm_string_drop_right, scm_string_trim,
635 scm_string_trim_right, scm_string_trim_both, scm_string_tokenize):
636 Use scm_mem2string instead of scm_makfromstr.
638 (scm_reverse_list_to_string, string_titlecase_x): Prefer
639 !SCM_<pred> over SCM_N<pred>.
641 2001-06-25 Marius Vollmer <mvo@zagadka.ping.de>
643 * srfi-8.scm: Use `re-export-syntax' to correctly re-export
646 2001-06-18 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
648 The SRFI-19 implementation was completely broken. Already the
649 reference implementation did not handle DST and time zones
650 properly and relied on non-R5RS-isms like passing reals to
651 `quotient'. For Guile, some additional fixes were needed because
652 of the incomplete numeric tower implementation. See also
655 * srfi-19.scm (date-zone-offset): Fixed typo in export clause.
656 (add-duration): Renamed from priv:add-duration.
657 (priv:time-normalize!): Handle fractional nanoseconds; remove
658 duplicate definition.
659 (priv:current-time-tai): Fixed typo.
660 (time=?, time<=?): Fixed typos.
661 (time-tai->time-utc, time-utc->time-tai,
662 time-utc->time-monotonic): Use make-time-unnormalized instead of
663 make-time when uninitialized time fields are used.
664 (set-date-nanosecond!, set-date-second!, set-date-minute!,
665 set-date-hour!, set-date-day!, set-date-month!, set-date-year!,
666 set-date-zone-offset!): Define.
667 (priv:local-tz-offset): Take an extra argument in order to handle
669 (time-utc->date, time-tai->date, time-monotonic->date): Handle the
670 changed signature of priv:local-tz-offset. Don't pass non-integer
671 arguments to quotient (non-R5RS, not supported by Guile).
672 (date->time-utc): Ensure that seconds in a date structure are
673 always exact integers. Handle DST properly.
674 (current-date, julian-day->date, modified-julian-day->date):
675 Handle the changed signature of priv:local-tz-offset.
676 (julian-day->time-utc): Reverted earlier inexact->exact hack;
677 make-time now handles inexact arguments.
678 (priv:locale-print-time-zone): At least print the numerical time
680 (priv:integer-reader): Fixed named let iteration.
681 (priv:read-directives): Use set-date-month! instead of
682 priv:set-date-month! etc.
683 (string->date): Handle DST properly.
685 2001-06-14 Marius Vollmer <mvo@zagadka.ping.de>
687 * srfi-13.scm: Prevent `export' from re-exporting core bindings.
689 2001-06-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
691 * srfi-14.c (charset_print): Mark unused parameters with
694 2001-06-07 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
696 * srfi-1.scm (fold, fold-pair): Fixed a buggy call to apply.
697 (delete-duplicates): Now the first occurrence of an element is
698 retained, as required.
699 (member, assoc): Fixed wrong order of equality predicate
702 2001-06-06 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
706 * srfi-1.scm: New file.
708 2001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
710 Added exception notice to all files.
712 2001-05-31 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
714 * srfi-14.scm, srfi-13.scm: Use `load-extension' for loading the
717 2001-05-31 Michael Livshin <mlivshin@bigfoot.com>
719 * Makefile.am (MKDEP): copied from libguile/Makefile.am, just in
721 (CLEANFILES): added *.x (and removed from DISTCLEANFILES)
723 2001-05-28 Michael Livshin <mlivshin@bigfoot.com>
725 * srfi-19.scm: removed a stray open parenthesis. (thanks to
726 Matthias Köppe for the report).
728 2001-05-23 Rob Browning <rlb@cs.utexas.edu>
730 * srfi-19.scm (:optional): renamed to optional to avoid reader
731 keywords conflict. Time passes... Removed :optional altogether
732 and just handle optional args directly. Thanks to Matthias Koeppe
733 for the report of this and the two bits below.
734 (priv:decode-julian-day-number): add inexact->exact for truncate
736 (time-utc->date): add inexact->exact and floor so quotient will
739 2001-05-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
741 * README: Update, document available SRFIs.
743 2001-05-21 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
745 * srfi-19.scm, srfi-17.scm, srfi-16.scm, srfi-14.scm, srfi-13.scm,
746 srfi-11.scm, srfi-10.scm, srfi-9.scm, srfi-8.scm, srfi-6.scm,
747 srfi-2.scm: Use `cond-expand-provide' for providing features to
750 2001-05-20 Marius Vollmer <mvo@zagadka.ping.de>
752 * srfi-14.c (scm_c_init_srfi_14): Added "int" to declaration of
755 2001-05-19 Marius Vollmer <mvo@zagadka.ping.de>
757 Avoid using module operations from C.
759 * srfi-13.c (scm_init_srfi_13_14): Removed.
760 * srfi-14.h, srfi-14.c (scm_c_init_srfi_14): New. Contains
761 initializations needed by C clients of srfi-14.
762 (scm_init_srfi_13, scm_init_srfi_14): Call it.
763 * srfi-13.scm: Call "scm_init_srfi_13" instead of
764 "scm_init_srfi_13_14".
765 * srfi-14.scm: Call "scm_init_srfi_14" instead of
766 "scm_init_srfi_13_14".
768 2001-05-16 Rob Browning <rlb@cs.utexas.edu>
770 * srfi-19.scm (priv:integer-reader-exact): minor cleanups.
772 2001-05-14 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
774 * Makefile.am (srfi_DATA): Added srfi-16.scm.
776 * srfi-16.scm: New file.
778 2001-05-10 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
780 * srfi-13.c (scm_string_delete): Logic was inversed for charset.
783 2001-05-08 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
785 * srfi-13.c (scm_string_copyS): Fixed nasty bug.
787 2001-05-05 Rob Browning <rlb@cs.utexas.edu>
789 * Makefile.am (srfi_DATA): added srfi-19.scm.
791 * srfi-19.scm: New file - time/date SRFI. Thanks to Will
794 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
796 * srfi-14.c, srfi-13.c: Added @bullet to various @itemize lists.
798 * srfi-10.scm: Typo fix.
800 2001-05-02 Rob Browning <rlb@cs.utexas.edu>
802 * srfi-11.scm (let-values): fix (a b c . d) case. Thanks Martin.
804 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
806 * Makefile.am (srfi_DATA): Added srfi-10.scm and srfi-17.scm.
808 * srfi-10.scm: New file.
810 * srfi-17.scm: New file, contributed by Matthias Koeppe. Thanks a
812 Added `Commentary:' tag.
814 * srfi-9.scm: Added `Commentary:' tag.
816 2001-04-27 Rob Browning <rlb@cs.utexas.edu>
819 (scm_reverse_string_concatenate): renamed to
820 scm_string_concatentate_reverse.
821 (scm_reverse_string_concatenate_shared): renamed to
822 scm_string_concatenate_reverse_shared.
824 2001-04-27 Gary Houston <ghouston@arglist.com>
826 * srfi-13.c (scm_init_srfi_13), srfi-14.c (scm_init_srfi_14):
827 add "srfi/" to lines including .x files so they can be found
828 when build_dir != src_dir.
830 2001-04-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
832 * Makefile.am (srfi_DATA): Added srfi-9.scm.
834 * srfi-9.scm: New file. Exports `define-record-type'.
836 2001-04-26 Rob Browning <rlb@cs.utexas.edu>
838 * Makefile.am (srfi_DATA): added srfi-6.scm.
839 (srfi_DATA): added srfi-11.scm.
840 (srfi_DATA): added srfi-8.scm.
841 (srfi_DATA): added srfi-2.scm.
843 * srfi-11.scm: new file - exports let-values and let*-values.
845 * srfi-6.scm: new file - guile already has srfi-6 procedures
846 loaded by default, so this is a dummy file right now.
848 * srfi-8.scm: new file - exports receive.
850 * srfi-2.scm: new file - just use/export (ice-9 and-let-star)
852 2001-04-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
854 Changed two procedure names to match final SRFI document. Thanks
855 to Rob Browning for spotting this.
857 * srfi-13.scm (string-concatenate-reverse),
858 (string-concatenate-reverse/shared): Rename from
859 reverse-string-concatenate[/shared].
861 * srfi-13.c (scm_string_concatenate_reverse_shared): Renamed from
862 scm_reverse_string_concatenate_shared.
863 (scm_string_concatenate_reverse): Renamed from
864 scm_reverse_string_concatenate.
866 2001-04-25 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
868 * configure.in, autogen.sh: Removed.
870 * srfi-13.c (scm_string_replace): Take sizeof (char) into account
871 when using memmove().
873 * srfi-14.h: Added prototypes for all exported procedures..
875 * srfi-13.c: Include srfi-13.h
877 * srfi-13.h: New file containing the prototypes.
879 * Makefile.am: Removed guile-srfi.texi and info_TEXINFOS variable.
880 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-14.h, so it gets
882 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-13.h.
884 2001-04-24 Neil Jerram <neil@ossau.uklinux.net>
886 * Makefile.am: Fixed "srf-14.x" typo.
888 2001-04-24 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
890 * guile-srfi.texi: Removed, because merged with the GRM.
892 * guile-srfi.texi: The docs are now up to date with the
893 implementation and have new introductory material.
895 2001-04-23 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
897 Integrated the guile-srfi package into the Guile distribution.
899 * srfi-13.c: All procedures so specified in the SRFI now accept
900 character set arguments.
902 * Makefile.am: Snarfed some variables from the guile-readline
905 * srfi-14.c, srfi-14.h: Add prefix SCM_ to exported macros.
907 * srfi-13.scm, srfi-14.scm, srfi-13.c, srfi-14.c, srfi-14.h,
908 configure.in, Makefile.am: Added FSF copyright and Guile license
911 * srfi-13.c, srfi-14.c: Include srfi-14.h.
912 (scm_init_srfi_13_14): Initialize the complete module, if not
915 * srfi-14.h: New file.
917 * srfi-13.scm, srfi-14.scm: Load new combined library.
919 * Makefile.am: Build only one library,
920 `libguile-srfi-srfi-13-14.la'
922 2001-04-04 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
924 * guile-srfi.texi: Integrated the SRFI-14 documentation.
926 * srfi-14.c, srfi-14.scm: Made the procedures and variables
927 compliant to the final SRFI document.
929 * Renamed the package to guile-srfi.
931 2001-04-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
933 * NEWS: New section for 0.0.3.
935 * configure.in, README, guile-srfi-13.texi: Bumped version number
938 * Released version 0.0.2.
940 * Makefile.am: Added rules for builing the SRFI-14 library.
942 * srfi-14.c, srfi-14.scm: New files, implementing SRFI-14
943 (character set library).
945 2001-03-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
947 * README: Updated procedure and incompatibility list.
949 * srfi-13.c (string_upcase_x, scm_string_upcase_xS),
950 (scm_string_upcase, string_downcase_x, scm_string_downcase_xS),
951 (scm_string_downcaseS, string_titlecase_x),
952 (scm_string_titlecase_x, scm_string_titlecase),
953 (scm_string_fill_xS, scm_string_copyS, scm_string_to_listS): New
956 * srfi-13.scm: Export new case mapping procedures.
958 * guile-srfi-13.texi (What cannot be done): Removed case mapping
959 procedures from incompatibility list.
960 (Case Mapping): New section for case mapping procedures.
962 2001-03-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
964 * NEWS: New section for 0.0.2
966 * configure.in, README, guile-srfi-13.texi: Bumbed version number
969 * Released version 0.0.1.
971 * README: Made procedure list up-to-date.
973 * guile-srfi-13.texi: Fixed typos, completed reference and added
976 * srfi-13.c, srfi-13.scm: Filled in the last missing pieces.
978 2001-03-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
980 * Started guile-srfi-13 package. Files are copied from the
981 guile-gdbm and slightly modified.