1 2005-03-16 Kevin Ryde <user42@zip.com.au>
3 * srfi-1.scm, srfi-1.c, srfi-1.h (drop-right, partition!, remove!,
4 split-at, split-at!, take-right): Rewrite in C. remove! derived from
7 2005-03-14 Kevin Ryde <user42@zip.com.au>
9 * srfi-1.scm, srfi-1.c, srfi-1.h (find, find-tail): Rewrite in C.
11 2005-03-13 Kevin Ryde <user42@zip.com.au>
13 * srfi-1.scm (lset-union): Call `=' procedure with args in the order
14 specified by the SRFI.
16 * srfi-60.scm, srfi-60.c, srfi-60.h: New files.
17 * Makefile.am: Add them.
19 2005-03-02 Marius Vollmer <marius.vollmer@uni-dortmund.de>
21 * srfi-1.c: Use scm_is_pair instead of SCM_CONSP; use scm_is_null
24 2005-02-18 Kevin Ryde <user42@zip.com.au>
26 * srfi-1.scm (lset-adjoin): Revert change using `list' not `acc', the
27 spec is not quite clear, but reference code uses acc, so do that.
29 2005-02-12 Kevin Ryde <user42@zip.com.au>
31 * srfi-1.scm (reduce, reduce-right): Don't call f with ridentity, use
32 it only if lst is empty, per srfi and intended optimization reduce
35 2005-02-04 Kevin Ryde <user42@zip.com.au>
37 * srfi-1.scm (list=): Correction to arguments passed to given elt=,
38 spec is (elt= e[i] e[i+1]) for lists i and i+1, previously the first
39 arg was always from list 0 not list i.
41 2005-01-29 Kevin Ryde <user42@zip.com.au>
43 * srfi-1.scm (lset-adjoin): Actually use the given `=' procedure.
44 Test membership only on the given `list', not `acc', as per the spec.
46 * srfi-1.c, srfi-1.scm (remove): Rewrite in C, a trivial adaption from
47 scm_filter in the core.
48 * srfi-1.scm (remove!): Use filter!.
50 2005-01-28 Kevin Ryde <user42@zip.com.au>
52 * srfi-1.scm (lset=): Correction to pred call arg order, srfi spec is
53 (= e[i] e[i+1]), but had some calls the other way around.
55 2005-01-24 Kevin Ryde <user42@zip.com.au>
57 * srfi-1.c (scm_srfi1_member): Correction to pred call arg order, srfi
58 spec is (PRED X elem). Update docstring from manual.
60 * srfi-1.scm (lset=): Allow no list arguments, per srfi spec example.
62 2005-01-18 Kevin Ryde <user42@zip.com.au>
64 * srfi-1.scm: Remove (ice-9 session) and (ice-9 receive), not used.
66 2005-01-12 Kevin Ryde <user42@zip.com.au>
68 * srfi-39.scm (current-input-port, current-output-port): Parameter
69 replacements for core functions, per SRFI spec.
70 (current-error-port): The same, for consistency.
72 2005-01-10 Marius Vollmer <mvo@zagadka.de>
74 * srfi-1.c (check_args): Bugfix to change from 2005-01-02: ARGV is
75 the vector to check, not ARGS.
77 2005-01-02 Marius Vollmer <mvo@zagadka.de>
79 * srfi-1.c: Use new vector elements API or simple vector API, as
82 2005-01-02 Kevin Ryde <user42@zip.com.au>
84 * Makefile.am (srfi_DATA): Add srfi-39.scm.
86 2004-12-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
88 * README: Update, document available SRFIs.
90 2004-12-06 Kevin Ryde <user42@zip.com.au>
92 * srfi-1.scm (alist-copy, alist-delete, break, span): Change to
95 * srfi-1.scm (alist-delete): Correction to equality proc call argument
96 order, spec is for given KEY param first.
98 2004-12-05 Kevin Ryde <user42@zip.com.au>
100 * srfi-1.scm (filter-map): Change to a tail-recursive form.
101 (append-map, append-map!): Rewrite as simple "concatenate map" forms,
102 for tail recursiveness.
104 2004-10-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
106 * srfi-4.scm, srfi-4.h, srfi-4.c: Moved content into core; only
107 the skeletons remains.
109 2004-10-22 Marius Vollmer <marius.vollmer@uni-dortmund.de>
111 * srfi-4.c (print_int64, print_uint64): Removed.
112 (uvec_print): Use scm_intprint for signed elemets and
113 scm_uintprint for unsigned ones. Do not use print_int64 and
114 print_uint64 since scm_intprint and scm_Uintprint can handle 64
117 2004-09-03 Stefan Jahn <stefan@lkcc.org>
119 * srfi-1.c, srfi-1.h: Renamed any 'lst1' into 'list1' because
120 lst1 is a #define on Win32 systems.
122 2004-08-26 Kevin Ryde <user42@zip.com.au>
124 * srfi-31.scm (rec): Add missing `error' to else clause.
126 2004-08-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
128 * Makefile.am: Added appropriate @LIBGUILE_*_MAJOR@ substitutions
129 to the library names.
130 * srfi-1.scm, srfi-4.scm: Use the new library names with
133 2004-08-25 Marius Vollmer <mvo@zagadka.de>
135 SRFI-13 and SRFI-14 have been moved into the core.
137 * srfi-13.scm, srfi-14.scm: Simply re-export the relevant
140 * srfi-13.h, srfi-13.c, srfi-14.h, srfi-14.c: Removed all real
141 content except for the init functions.
143 2004-08-19 Marius Vollmer <marius.vollmer@uni-dortmund.de>
145 * srfi-13.h, srfi-13.c: (scm_substring_shared): Renamed to
146 scm_substring_sharedS.
148 * srfi-14.c, srfi-13.c: Adapted to new internal string and symbol
151 * srfi-13.scm (substring/shared): Export as replacement since we
152 now have a version in the core.
154 2004-08-15 Marius Vollmer <mvo@zagadka.de>
156 * srfi-39.scm: New, from Jose A Ortega Ruiz. Thanks!
158 2004-08-14 Kevin Ryde <user42@zip.com.au>
160 * srfi-13.c (scm_string_any, scm_string_every): Add support for char
161 and charset as predicates, per SRFI-13 spec.
163 2004-08-12 Marius Vollmer <marius.vollmer@uni-dortmund.de>
165 * srfi-13.c (MY_VALIDATE_SUBSTRING_SPEC_COPY,
166 MY_VALIDATE_STRING_COPY): Modernized clones of the deprecated
167 validation macros. Replaced every use.
169 2004-08-05 Kevin Ryde <user42@zip.com.au>
171 * srfi-13.c (scm_string_any, scm_string_every): Enhance docstrings as
172 per doc/ref/srfi-modules.texi.
174 2004-08-02 Marius Vollmer <marius.vollmer@uni-dortmund.de>
176 * srfi-4.c: Replaced scm_num2* and scm_*2num with scm_to_* and
177 scm_from_*, respectively.
178 (print_int64, print_uint64): Rewritten by just calling scm_iprin1
181 2004-08-02 Kevin Ryde <user42@zip.com.au>
183 * srfi-13.c (scm_string_every): Correction to initial "res" value,
184 return should be #t for an empty string. Reported by Andreas Vögele.
186 2004-07-10 Marius Vollmer <marius.vollmer@uni-dortmund.de>
188 * srfi-13.c, srfi-14.c, srfi-4.c: Changed all uses of
189 SCM_VALIDATE_INUM, SCM_VALIDATE_INUM_COPY, SCM_VALIDATE_BIGINT,
190 SCM_VALIDATE_INUM_MIN, SCM_VALIDATE_INUM_MIN_COPY,
191 SCM_VALIDATE_INUM_MIN_DEF_COPY,SCM_VALIDATE_INUM_DEF,
192 SCM_VALIDATE_INUM_DEF_COPY, SCM_VALIDATE_INUM_RANGE,
193 SCM_VALIDATE_INUM_RANGE_COPY to scm_to_size_t or similar.
195 2004-07-06 Marius Vollmer <marius.vollmer@uni-dortmund.de>
197 * srfi-1.c, srfi-13.c, srfi-14.c, srfi-4.c: Replaced all uses of
198 deprecated SCM_FALSEP, SCM_NFALSEP, SCM_BOOL, SCM_NEGATE_BOOL, and
199 SCM_BOOLP with scm_is_false, scm_is_true, scm_from_bool, and
200 scm_is_bool, respectively.
202 2004-07-05 Kevin Ryde <user42@zip.com.au>
204 * srfi-4.c (uvec_sizes): Add "const".
206 * srfi-31.scm: Correction to heading comment.
208 2004-06-20 Rob Browning <rlb@defaultvalue.org>
210 * srfi-4.c: fix #ifdef checks for 64-bit types; should be #if.
211 Add separate symmetric test for SCM_HAVE_T_UINT64 in one case.
212 (uvec_print): rewrite using a union to make more
213 compact, and use static print_uint64 and print_int64 to print
215 (print_int64): new static function (temporary fix).
216 (print_uint64): new static function (temporary fix).
218 * Makefile.am (srfi_DATA): add srfi-31.scm.
220 * srfi-31.scm: new file.
222 2004-04-24 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
224 * srfi-17.scm (setter, car, cdr etc.): When within one define
225 expression a new variable in the local module is defined in terms
226 of an equally named variable from some other module, use @ to
227 refer to the variable in the other module. This is necessary due
228 to section 5.2.1 of R5RS: In a define expression first the new
229 binding is created and then the expression is evaluated.
231 2004-04-24 Kevin Ryde <user42@zip.com.au>
233 * srfi-11.scm (let-values): Use make-symbol rather than gensym, for
234 guaranteed uniqueness of temp variable symbols.
236 2004-04-15 Kevin Ryde <user42@zip.com.au>
238 * srfi-13.c (scm_string_trim, scm_string_trim_right,
239 scm_string_trim_both): Cast to unsigned char for isspace.
241 2004-04-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
243 * srfi-13.c (s_scm_string_map): convert character to unsigned char
244 before converting to unsigned int. This prevents hi-bit ascii as
245 being converted large integers.
246 (string_upcase_x): change caller for scm_{up,down}case to
249 2004-03-23 Kevin Ryde <user42@zip.com.au>
251 * srfi-1.scm (circular-list): Rewrite using set-cdr!, no need to copy
254 2004-02-08 Mikael Djurfeldt <djurfeldt@nada.kth.se>
256 * Makefile.am (TAGS_FILES): Use this variable instead of
257 ETAGS_ARGS so that TAGS can be built using separate build
260 2004-01-24 Marius Vollmer <mvo@zagadka.de>
262 * Makefile.am (srfi_DATA): Added srfi-26.scm.
264 2004-01-21 Marius Vollmer <m.vollmer@ping.de>
266 * srfi-26.scm: New, from Daniel Skarda. Thanks!
268 2003-12-03 Kevin Ryde <user42@zip.com.au>
270 * srfi-1.c, srfi-1.h, srfi-1.scm (count): Rewrite in C, avoiding
273 * srfi-1.scm (map!): Define as an alias for map, previous definition
274 was not tail-recursive.
276 2003-08-23 Kevin Ryde <user42@zip.com.au>
278 * srfi-1.c, srfi-1.h, srfi-1.scm (list-copy): New function, derived
279 from core list-copy but allowing improper lists, per SRFI-1 spec.
281 * srfi-19.scm (date-week-number): Correction, day of week starting
282 week applied was off by one.
284 2003-07-29 Kevin Ryde <user42@zip.com.au>
286 * srfi-1.c, srfi-1.scm (concatenate, concatenate!): Use scm_append and
289 * srfi-1.c, srfi-1.h, srfi-1.scm (length+): Rewrite using scm_ilength.
291 * srfi-34.scm: Add cond-expand-provide srfi-34.
293 2003-07-14 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
295 * srfi-1.c, srfi-1.h (scm_srfi1_partition), srfi-1.scm (partition):
296 Re-implement in C to avoid stack overflows for long input lists.
298 2003-07-08 Kevin Ryde <user42@zip.com.au>
300 * srfi-1.c, srfi-1.h (scm_srfi1_delete, scm_srfi1_delete_x,
301 scm_srfi1_delete_duplicates, scm_srfi1_delete_duplicates_x): New
302 functions. scm_srfi1_delete_x is derived from scm_delete_x.
303 * srfi-1.scm (delete, delete!, delete-duplicates, delete-duplicates!):
306 2003-06-07 Kevin Ryde <user42@zip.com.au>
308 * srfi-6.scm: #:re-export open-input-string, open-output-string and
309 get-output-string, for the benefit of applications wanting to use
310 #:select on the module.
312 2003-05-29 Stefan Jahn <stefan@lkcc.org>
314 * Makefile.am (libguile_srfi_srfi_1_la_LDFLAGS,
315 libguile_srfi_srfi_4_la_LDFLAGS,
316 libguile_srfi_srfi_13_14__la_LDFLAGS): Added the -no-undefined
317 option for the mingw32 build.
319 2003-05-13 Kevin Ryde <user42@zip.com.au>
321 * srfi-1.scm (delete): Fix predicate arg order to match srfi-1 spec.
323 2003-05-10 Kevin Ryde <user42@zip.com.au>
325 * srfi-1.scm (take): Make this an alias for list-head.
326 (drop): Make this an alias for list-tail.
328 2003-04-30 Neil Jerram <neil@ossau.uklinux.net>
330 * srfi-34.scm: New file.
332 2003-04-23 Marius Vollmer <mvo@zagadka.de>
334 * srfi-1.scm: Removed stray "o" from exports list.
336 2003-04-21 Dirk Herrmann <D.Herrmann@tu-bs.de>
338 * srfi-1.c (srfi1_ilength): Prefer !SCM_CONSP over SCM_NCONSP.
339 Now, guile itself does not include any calls to SCM_NCONSP any
342 2003-04-05 Marius Vollmer <mvo@zagadka.de>
344 * Changed license terms to the plain LGPL thru-out.
346 2003-03-25 Rob Browning <rlb@defaultvalue.org>
348 * srfi-4.c: replace typedefs for basic types with typedefs using
349 new standard int types (i.e. scm_t_uint8, etc.) -- should probably
350 remove typedefs altogether later.
352 2003-03-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
354 * srfi-1.scm: Re-export all srfi-1 bindings implemented by the
355 core. (Thanks to Kevin Ryde.)
357 2003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
359 * srfi-13.scm: Mark replacements.
361 * srfi-17.scm: Mark replacements.
363 2003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
365 * srfi-1.scm (iota, map, for-each, map-in-order, list-index,
366 member, delete, delete!, assoc): Marked as replacements.
367 (filter, filter!): Removed. (Now implemented in the core.)
369 2003-03-06 Mikael Djurfeldt <djurfeldt@nada.kth.se>
371 * srfi-1.c (scm_init_srfi_1): Extend root module map and for-each
372 with the versions in this module using
373 scm_c_extend_primitive_generic.
375 2003-02-03 Mikael Djurfeldt <djurfeldt@nada.kth.se>
377 * srfi-1.c (srfi1_for_each): Corrected argument checking for the
378 case of two argument lists. (Thanks to Kevin Ryde.)
380 2002-12-08 Rob Browning <rlb@defaultvalue.org>
382 * Makefile.am (srfidir): VERSION -> GUILE_EFFECTIVE_VERSION.
384 2002-12-02 Marius Vollmer <mvo@zagadka.ping.de>
386 * Makefile.am (srfiinclude_HEADERS): Added srfi-1.h.
388 2002-12-01 Mikael Djurfeldt <mdj@linnaeus>
390 * srfi-1.scm: Load srfi-1 extension.
391 (map, map-in-order, for-each, member, assoc): Replaced by
392 primitives in srfi-1.c.
393 (map1): Defined as `map'.
395 * Makefile.am: Added rules for srfi-1.c.
397 * srfi-1.c, srfi-1.h: New files.
399 2002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
401 * srfi-13.c (scm_string_tokenize): Instead of using "isgraphic" as
402 the subtitute for char-set:graphic when then token-set hsa been
403 defaulted, grab the real char-set:graphic from (srfi srfi-14).
405 * srfi-14.h (SCM_CHARSET_GET): Cast IDX to unsigned char so that
406 it works for 8-bit characters. Thanks to Matthias Koeppe! No,
409 2002-04-24 Marius Vollmer <mvo@zagadka.ping.de>
411 * srfi-13.c (s_scm_string_tokenize): Only take character sets as
412 the second arg. Collect characters belonging to this set into
413 tokens (as specified by the SRFI), instead of splitting at these
414 characters. Default to an equivalent of char-set:graphic instead
415 of everything-but-whitespace. Thanks to Matthias Koeppe!
417 2002-04-10 Rob Browning <rlb@defaultvalue.org>
419 * .cvsignore: add *.c.clean.c.
421 2002-03-27 Thien-Thi Nguyen <ttn@giblet.glug.org>
423 * srfi-1.scm, srfi-13.scm, srfi-17.scm, srfi-4.scm, srfi-9.scm,
424 srfi-10.scm, srfi-14.scm, srfi-19.scm, srfi-6.scm, srfi-11.scm,
425 srfi-16.scm, srfi-2.scm, srfi-8.scm: Update copyright.
426 Point to manual in commentary; nfc.
428 2002-03-24 Marius Vollmer <mvo@zagadka.ping.de>
430 * Makefile.am (.c.x): Pass "-o $@" to guile-snarf.
432 2002-03-13 Thien-Thi Nguyen <ttn@giblet.glug.org>
434 * srfi-13.c, srfi-14.c, srfi-4.c:
435 Retire inclusion guard macro SCM_MAGIC_SNARFER.
437 * Makefile.am (snarfcppopts): New var.
438 (.c.x): Use $(snarfcppopts). Rework guile-snarf usage.
440 2002-03-11 Marius Vollmer <mvo@zagadka.ping.de>
442 * srfi-13.c (string_titlecase_x): Treat characters as unsigned so
443 that 8-bit chars work. Thanks to David Pirotte!
445 2002-02-24 Rob Browning <rlb@defaultvalue.org>
447 * Makefile.am (libguile_srfi_srfi_4_la_LDFLAGS): use
448 @LIBGUILE_SRFI_SRFI_4_INTERFACE@.
449 (libguile_srfi_srfi_13_14_la_LDFLAGS): use
450 @LIBGUILE_SRFI_SRFI_13_14_INTERFACE@.
452 2002-02-23 Neil Jerram <neil@ossau.uklinux.net>
454 * srfi-19.scm (priv:month-assoc): Correct numbers so that they
455 match the expectations of priv:year-day.
457 2002-02-22 Neil Jerram <neil@ossau.uklinux.net>
459 * srfi-19.scm (priv:year-day): Index into priv:month-assoc using
460 month number, not day number. (Thanks to Sébastien de Menten de
461 Horne for reporting the problem.)
463 2002-02-11 Marius Vollmer <marius.vollmer@uni-dortmund.de>
465 * srfi-14.c, srfi-4.c: Use scm_gc_malloc/scm_malloc and
466 scm_gc_free/free instead of scm_must_malloc and scm_must_free, as
469 2002-01-21 Thien-Thi Nguyen <ttn@giblet.glug.org>
471 * srfi-1.scm (count1, take-while): Rewrite to be tail-recursive.
472 Thanks to Panagiotis Vossos.
474 2002-01-20 Thien-Thi Nguyen <ttn@giblet.glug.org>
476 * srfi-1.scm (map1): Rewrite to be tail-recursive.
477 Thanks to Panagiotis Vossos for the bug report.
479 2001-12-16 Marius Vollmer <mvo@zagadka.ping.de>
481 * srfi-11.scm (let-values): Use `gensym' instead of `gentemp'.
483 2001-11-30 Neil Jerram <neil@ossau.uklinux.net>
485 * Makefile.am (ETAGS_ARGS): Added.
487 2001-11-12 Marius Vollmer <mvo@zagadka.ping.de>
489 * srfi-4.c: Use HAVE_LONG_LONG instead of HAVE_LONG_LONGS and test
490 it with `#ifdef' instead of `#if'.
492 2001-11-07 Neil Jerram <neil@ossau.uklinux.net>
494 * srfi-13.c (scm_string_unfold, scm_string_unfold_right),
495 srfi-14.c (scm_char_set_unfold, scm_char_set_unfold_x): Remove
496 superfluous whitespace at end of docstring lines.
498 2001-11-06 Thien-Thi Nguyen <ttn@glug.org>
500 * srfi-19.scm (time-monotonic->time-monotonic): Spurious;
503 2001-11-04 Stefan Jahn <stefan@lkcc.org>
505 * srfi-13.h, srfi-14.h, srfi-4.h: Follow-up patch. Renamed
506 __FOO__ macros into FOO.
508 2001-11-03 Marius Vollmer <mvo@zagadka.ping.de>
510 * Makefile.am (libguile_srfi_srfi_4_la_LIBADD,
511 libguile_srfi_srfi_13_14_la_LIBADD): Refer to build directory, not
512 the source directory, for libguile.la. Thanks to Ken Raeburn.
514 2001-11-02 Marius Vollmer <mvo@zagadka.ping.de>
516 Support for native Win32. Thanks to Stefan Jahn!
518 * Makefile.am: Put `-no-undefined' into LDFLAGS to support linkers
519 which do not allow unresolved symbols inside shared libraries.
521 * srfi-13.h, srfi-14.h: Defined SCM_SRFI1314_API. Prefixed each
522 exported symbol with SCM_SRFI1314_API.
524 * srfi-4.h: Defined SCM_SRFI4_API. Prefixed each exported
525 symbol with SCM_SRFI4_API.
527 2001-10-21 Mikael Djurfeldt <mdj@linnaeus>
529 * srfi-2.scm, srfi-4.scm, srfi-8.scm, srfi-9.scm, srfi-10.scm,
530 srfi-11.scm, srfi-14.scm, srfi-16.scm: Move module the system
531 directives `export', `export-syntax', `re-export' and
532 `re-export-syntax' into the `define-module' form. This is the
533 recommended way of exporting bindings.
535 2001-09-22 Mikael Djurfeldt <mdj@linnaeus>
537 * srfi-19.scm (priv:split-real): Inserted missing call to
540 2001-09-21 Rob Browning <rlb@defaultvalue.org>
542 * srfi-14.h (SCM_CHARSET_GET): need 1L, not just 1 in "<<".
544 * srfi-14.c (SCM_CHARSET_SET): need 1L, not just 1 in "<<".
545 (scm_char_set_hash): val needs to be long, not just unsigned.
546 (scm_char_set): need 1L, not just 1 in "<<".
547 (scm_list_to_char_set): need 1L, not just 1 in "<<".
548 (scm_list_to_char_set_x): need 1L, not just 1 in "<<".
549 (scm_list_to_char_set_x): FUNC_NAME was wrong - added a _x.
550 (scm_string_to_char_set): string length var needed to be
552 (scm_string_to_char_set): need 1L, not just 1 in "<<".
553 (scm_string_to_char_set_x): string length var needed to be
555 (scm_string_to_char_set_x): need 1L, not just 1 in "<<".
556 (scm_char_set_filter): need 1L, not just 1 in "<<".
557 (scm_char_set_filter_x): need 1L, not just 1 in "<<".
558 (scm_ucs_range_to_char_set): need 1L, not just 1 in "<<".
559 (scm_ucs_range_to_char_set_x): need 1L, not just 1 in "<<".
560 (scm_char_set_adjoin): need 1L, not just 1 in "<<".
561 (scm_char_set_delete): need 1L, not just 1 in "<<".
562 (scm_char_set_adjoin_x): need 1L, not just 1 in "<<".
563 (scm_char_set_delete_x): need 1L, not just 1 in "<<".
565 2001-09-12 Gary Houston <ghouston@arglist.com>
567 * srfi-1.scm (filter): change "caller" to "filter" in check-arg-type.
569 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
571 * srfi-1.scm, srfi-13.scm: Remove the defines that were needed to
572 trick export from the beginning of the files.
574 2001-08-25 Thien-Thi Nguyen <ttn@revel.glug.org>
576 * srfi-19.scm (add-duration): Fix bug: Call `add-duration!' w/
577 two args. Thanks to Alex Shinn.
579 2001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
581 * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu".
583 2001-08-24 Thien-Thi Nguyen <ttn@revel.glug.org>
585 * srfi-13.h (scm_string_map, scm_string_map_x,
586 scm_string_for_each): Reverse order of first two args.
587 (scm_string_for_each_index): New proc.
589 * srfi-13.c (scm_string_for_each): Reverse order of first 2 args.
590 (scm_string_for_each_index): New func.
592 * srfi-13.scm (string-for-each-index): New exported proc.
594 Thanks to Alex Shinn.
596 2001-08-22 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
598 * srfi-13.c (string-map): Swapped order of string and proc args to
599 conform with the srfi. (Thanks to Alex Shinn.)
601 2001-08-05 Gary Houston <ghouston@arglist.com>
603 * srfi-1.scm (check-arg-type, non-negative-integer?): a couple of new
604 internal definitions.
605 (list-tabulate, iota): check for bad arguments that otherwise
607 (filter): check for proper list, to avoid infinite recursion on
610 2001-08-04 Gary Houston <ghouston@arglist.com>
612 * srfi-1.scm (filter): replaced with a tail-recursive version.
613 (remove): implement using filter, to make it tail-recursive.
615 2001-07-31 Gary Houston <ghouston@arglist.com>
617 * srfi-14.c (scm_char_set_diff_plus_intersection): wasn't correctly
618 accounting for the (char-set-union cs2...) in the spec. i.e.,
619 (char-set-diff+intersection a) -> copy-of-a, empty-set
620 and the following are equivalent:
621 (char-set-diff+intersection a (char-set #\a) (char-set #\b))
622 (char-set-diff+intersection a (char-set #\a #\b))
624 (scm_char_set_xor_x): disabled the side-effecting code, since it
625 gives inconsistent results to scm_char_set_xor for the case
626 (char-set-xor! a a a).
628 (scm_char_set_diff_plus_intersection_x): added cs2 argument, since
629 two arguments are compulsory in final spec. also similar changes
630 as for scm_char_set_diff_plus_intersection.
631 * srfi-14.h (scm_char_set_diff_plus_intersection_x): added cs2.
633 2001-07-22 Gary Houston <ghouston@arglist.com>
635 * srfi-14.c (scm_char_set_intersection, scm_char_set_xor): remove
636 the compulsory cs1 arguments: all args are optional in final spec.
638 * srfi-14.h: declarations updated.
640 2001-07-18 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
642 * srfi-11.scm, srfi-8.scm: Update copyright notice.
644 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
646 * srfi-14.c: Okay. Now I got it. Really. This time it's fixed.
649 * srfi-19.scm: Define `current-time' before exporting it.
651 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
653 * srfi-14.c: Fix for bug caused by brain-malfunctioning on my
654 side. Bit sets were handled wrong because I couldn't tell bit
655 counts from byte counts. Also, the bit array should be 256 / 8
656 bytes long. Thank you, Gary!
658 Removed unnecessary protoype for scm_char_set_copy.
660 2001-07-16 Gary Houston <ghouston@arglist.com>
662 * srfi-14.scm: export string->char-set!, not string-char-set!.
664 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next,
665 scm_end_of_char_set_p): reject negative cursor values.
666 (scm_list_to_char_set, scm_list_to_char_set_x): when reporting
667 type error in list component, omit the position (was always 1).
669 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
671 (scm_char_set_map): Bug-fix: char-set-map was modifying the
672 argument instead of the return value.
674 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
676 * srfi-14.c: Allocate correct memory size for charsets (32 bytes),
677 use this value for initializing and comparing charsets.
678 (scm_char_set_hash): Use ``better'' hash algorithm which produces
681 2001-07-15 Gary Houston <ghouston@arglist.com>
683 * srfi-14.c (scm_char_set_hash): recognise 0 instead of #f in the
684 opt arg to give default bound, as in final spec. don't allow
686 (scm_char_set_hash): bug fix: was overrunning the buffer and
687 calculating based on garbage.
688 (scm_char_set_eq, scm_char_set_leq): fix argument number in error
689 reporting: wasn't incremented due to macro coding.
690 (scm_char_set): report argument number in error reporting: was
691 hard coded to 1. remove a couple of local variables.
693 2001-07-13 Marius Vollmer <mvo@zagadka.ping.de>
695 * srfi-2.scm (and-let*): Use `re-export-syntax' instead of
698 2001-07-11 Gary Houston <ghouston@arglist.com>
700 * srfi-14.c (s_scm_char_set_eq): bug fix: (char-set=) should
701 return #t instead of giving wrong-number-of-arguments . take a
702 single "rest" argument. use memcmp instead of a loop to compare
704 (s_scm_char_set_leq): similarly, (char-set<=) should return #t.
705 take a single "rest" argument.
706 srfi-14.h: update the declarations.
708 2001-07-09 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
712 2001-07-06 Gary Houston <ghouston@arglist.com>
714 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
715 delete!, assoc): roll back the previous change. instead place
716 dummy definitions in a deprecated block at the beginning as in
719 2001-07-06 Rob Browning <rlb@defaultvalue.org>
721 * srfi-19.scm (priv:locale-reader): don't need open-output-string.
723 2001-07-03 Gary Houston <ghouston@arglist.com>
725 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
726 delete!, assoc): don't export until the new bindings have been
727 created. otherwise "export" thinks they are being re-exported and
728 a deprecation warning is produced.
729 (map-in-order): defined and exported, to support lists of unequal
732 2001-07-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
734 * srfi-1.scm (list-tabulate): Do not go into infinite loop for
735 invalid arguments. Same fix for several other procedures (do not
736 use zero?, use <= 0).
738 2001-07-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
740 * srfi-1.scm: Replaced calls to `map' in several procedures to
742 (map, for-each): New procedures, extended from R5RS.
744 2001-06-28 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
746 * srfi-4.c: Minor cleanups.
748 * srfi-14.c (scm_char_set_fold, scm_char_set_unfold)
749 (scm_char_set_unfold_x, scm_char_set_for_each)
750 (scm_char_set_map, scm_char_set_filter)
751 (scm_char_set_filter_x, scm_char_set_count)
752 (scm_char_set_every, scm_char_set_any): Replace calls to
753 scm_apply() with the corresponding scm_call_N() functions.
755 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next)
756 (scm_char_set_unfold, scm_char_set_unfold_x)
757 (scm_char_set_map, scm_char_set_diff_plus_intersection)
758 (scm_char_set_diff_plus_intersection_x): Replace deprecated macros
759 SCM_LISTN with calls to scm_list_N().
761 * srfi-13.c (scm_string_tabulate, scm_string_map)
762 (scm_string_map_x, scm_string_unfold)
763 (scm_string_unfold_right): Replace deprecated macros SCM_LISTN
764 with calls to scm_list_N().
766 * srfi-13.c (scm_string_any, scm_string_every),
767 (scm_string_tabulate, scm_string_trim),
768 (scm_string_trim_right, scm_string_trim_both),
769 (scm_string_compare, scm_string_compare_ci),
770 (scm_string_indexS, scm_string_index_right),
771 (scm_string_skip, scm_string_skip_right, scm_string_count),
772 (scm_string_map, scm_string_map_x, scm_string_fold),
773 (scm_string_fold_right, scm_string_unfold),
774 (scm_string_unfold_right, scm_string_for_each),
775 (scm_string_filter, scm_string_delete): Replace calls to
776 scm_apply() with the corresponding scm_call_N() functions.
778 2001-06-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
780 * Makefile.am: Added SRFI-4 files in various places.
782 * srfi-4.c, srfi-4.h, srfi-4.scm: New files implementing SRFI-4.
784 2001-06-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
786 * srfi-13.c (scm_string_copyS, scm_string_take, scm_string_drop,
787 scm_string_take_right, scm_string_drop_right, scm_string_trim,
788 scm_string_trim_right, scm_string_trim_both, scm_string_tokenize):
789 Use scm_mem2string instead of scm_makfromstr.
791 (scm_reverse_list_to_string, string_titlecase_x): Prefer
792 !SCM_<pred> over SCM_N<pred>.
794 2001-06-25 Marius Vollmer <mvo@zagadka.ping.de>
796 * srfi-8.scm: Use `re-export-syntax' to correctly re-export
799 2001-06-18 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
801 The SRFI-19 implementation was completely broken. Already the
802 reference implementation did not handle DST and time zones
803 properly and relied on non-R5RS-isms like passing reals to
804 `quotient'. For Guile, some additional fixes were needed because
805 of the incomplete numeric tower implementation. See also
808 * srfi-19.scm (date-zone-offset): Fixed typo in export clause.
809 (add-duration): Renamed from priv:add-duration.
810 (priv:time-normalize!): Handle fractional nanoseconds; remove
811 duplicate definition.
812 (priv:current-time-tai): Fixed typo.
813 (time=?, time<=?): Fixed typos.
814 (time-tai->time-utc, time-utc->time-tai,
815 time-utc->time-monotonic): Use make-time-unnormalized instead of
816 make-time when uninitialized time fields are used.
817 (set-date-nanosecond!, set-date-second!, set-date-minute!,
818 set-date-hour!, set-date-day!, set-date-month!, set-date-year!,
819 set-date-zone-offset!): Define.
820 (priv:local-tz-offset): Take an extra argument in order to handle
822 (time-utc->date, time-tai->date, time-monotonic->date): Handle the
823 changed signature of priv:local-tz-offset. Don't pass non-integer
824 arguments to quotient (non-R5RS, not supported by Guile).
825 (date->time-utc): Ensure that seconds in a date structure are
826 always exact integers. Handle DST properly.
827 (current-date, julian-day->date, modified-julian-day->date):
828 Handle the changed signature of priv:local-tz-offset.
829 (julian-day->time-utc): Reverted earlier inexact->exact hack;
830 make-time now handles inexact arguments.
831 (priv:locale-print-time-zone): At least print the numerical time
833 (priv:integer-reader): Fixed named let iteration.
834 (priv:read-directives): Use set-date-month! instead of
835 priv:set-date-month! etc.
836 (string->date): Handle DST properly.
838 2001-06-14 Marius Vollmer <mvo@zagadka.ping.de>
840 * srfi-13.scm: Prevent `export' from re-exporting core bindings.
842 2001-06-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
844 * srfi-14.c (charset_print): Mark unused parameters with
847 2001-06-07 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
849 * srfi-1.scm (fold, fold-pair): Fixed a buggy call to apply.
850 (delete-duplicates): Now the first occurrence of an element is
851 retained, as required.
852 (member, assoc): Fixed wrong order of equality predicate
855 2001-06-06 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
859 * srfi-1.scm: New file.
861 2001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
863 Added exception notice to all files.
865 2001-05-31 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
867 * srfi-14.scm, srfi-13.scm: Use `load-extension' for loading the
870 2001-05-31 Michael Livshin <mlivshin@bigfoot.com>
872 * Makefile.am (MKDEP): copied from libguile/Makefile.am, just in
874 (CLEANFILES): added *.x (and removed from DISTCLEANFILES)
876 2001-05-28 Michael Livshin <mlivshin@bigfoot.com>
878 * srfi-19.scm: removed a stray open parenthesis. (thanks to
879 Matthias Köppe for the report).
881 2001-05-23 Rob Browning <rlb@cs.utexas.edu>
883 * srfi-19.scm (:optional): renamed to optional to avoid reader
884 keywords conflict. Time passes... Removed :optional altogether
885 and just handle optional args directly. Thanks to Matthias Koeppe
886 for the report of this and the two bits below.
887 (priv:decode-julian-day-number): add inexact->exact for truncate
889 (time-utc->date): add inexact->exact and floor so quotient will
892 2001-05-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
894 * README: Update, document available SRFIs.
896 2001-05-21 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
898 * srfi-19.scm, srfi-17.scm, srfi-16.scm, srfi-14.scm, srfi-13.scm,
899 srfi-11.scm, srfi-10.scm, srfi-9.scm, srfi-8.scm, srfi-6.scm,
900 srfi-2.scm: Use `cond-expand-provide' for providing features to
903 2001-05-20 Marius Vollmer <mvo@zagadka.ping.de>
905 * srfi-14.c (scm_c_init_srfi_14): Added "int" to declaration of
908 2001-05-19 Marius Vollmer <mvo@zagadka.ping.de>
910 Avoid using module operations from C.
912 * srfi-13.c (scm_init_srfi_13_14): Removed.
913 * srfi-14.h, srfi-14.c (scm_c_init_srfi_14): New. Contains
914 initializations needed by C clients of srfi-14.
915 (scm_init_srfi_13, scm_init_srfi_14): Call it.
916 * srfi-13.scm: Call "scm_init_srfi_13" instead of
917 "scm_init_srfi_13_14".
918 * srfi-14.scm: Call "scm_init_srfi_14" instead of
919 "scm_init_srfi_13_14".
921 2001-05-16 Rob Browning <rlb@cs.utexas.edu>
923 * srfi-19.scm (priv:integer-reader-exact): minor cleanups.
925 2001-05-14 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
927 * Makefile.am (srfi_DATA): Added srfi-16.scm.
929 * srfi-16.scm: New file.
931 2001-05-10 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
933 * srfi-13.c (scm_string_delete): Logic was inversed for charset.
936 2001-05-08 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
938 * srfi-13.c (scm_string_copyS): Fixed nasty bug.
940 2001-05-05 Rob Browning <rlb@cs.utexas.edu>
942 * Makefile.am (srfi_DATA): added srfi-19.scm.
944 * srfi-19.scm: New file - time/date SRFI. Thanks to Will
947 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
949 * srfi-14.c, srfi-13.c: Added @bullet to various @itemize lists.
951 * srfi-10.scm: Typo fix.
953 2001-05-02 Rob Browning <rlb@cs.utexas.edu>
955 * srfi-11.scm (let-values): fix (a b c . d) case. Thanks Martin.
957 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
959 * Makefile.am (srfi_DATA): Added srfi-10.scm and srfi-17.scm.
961 * srfi-10.scm: New file.
963 * srfi-17.scm: New file, contributed by Matthias Koeppe. Thanks a
965 Added `Commentary:' tag.
967 * srfi-9.scm: Added `Commentary:' tag.
969 2001-04-27 Rob Browning <rlb@cs.utexas.edu>
972 (scm_reverse_string_concatenate): renamed to
973 scm_string_concatentate_reverse.
974 (scm_reverse_string_concatenate_shared): renamed to
975 scm_string_concatenate_reverse_shared.
977 2001-04-27 Gary Houston <ghouston@arglist.com>
979 * srfi-13.c (scm_init_srfi_13), srfi-14.c (scm_init_srfi_14):
980 add "srfi/" to lines including .x files so they can be found
981 when build_dir != src_dir.
983 2001-04-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
985 * Makefile.am (srfi_DATA): Added srfi-9.scm.
987 * srfi-9.scm: New file. Exports `define-record-type'.
989 2001-04-26 Rob Browning <rlb@cs.utexas.edu>
991 * Makefile.am (srfi_DATA): added srfi-6.scm.
992 (srfi_DATA): added srfi-11.scm.
993 (srfi_DATA): added srfi-8.scm.
994 (srfi_DATA): added srfi-2.scm.
996 * srfi-11.scm: new file - exports let-values and let*-values.
998 * srfi-6.scm: new file - guile already has srfi-6 procedures
999 loaded by default, so this is a dummy file right now.
1001 * srfi-8.scm: new file - exports receive.
1003 * srfi-2.scm: new file - just use/export (ice-9 and-let-star)
1005 2001-04-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1007 Changed two procedure names to match final SRFI document. Thanks
1008 to Rob Browning for spotting this.
1010 * srfi-13.scm (string-concatenate-reverse),
1011 (string-concatenate-reverse/shared): Rename from
1012 reverse-string-concatenate[/shared].
1014 * srfi-13.c (scm_string_concatenate_reverse_shared): Renamed from
1015 scm_reverse_string_concatenate_shared.
1016 (scm_string_concatenate_reverse): Renamed from
1017 scm_reverse_string_concatenate.
1019 2001-04-25 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1021 * configure.in, autogen.sh: Removed.
1023 * srfi-13.c (scm_string_replace): Take sizeof (char) into account
1024 when using memmove().
1026 * srfi-14.h: Added prototypes for all exported procedures..
1028 * srfi-13.c: Include srfi-13.h
1030 * srfi-13.h: New file containing the prototypes.
1032 * Makefile.am: Removed guile-srfi.texi and info_TEXINFOS variable.
1033 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-14.h, so it gets
1035 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-13.h.
1037 2001-04-24 Neil Jerram <neil@ossau.uklinux.net>
1039 * Makefile.am: Fixed "srf-14.x" typo.
1041 2001-04-24 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1043 * guile-srfi.texi: Removed, because merged with the GRM.
1045 * guile-srfi.texi: The docs are now up to date with the
1046 implementation and have new introductory material.
1048 2001-04-23 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1050 Integrated the guile-srfi package into the Guile distribution.
1052 * srfi-13.c: All procedures so specified in the SRFI now accept
1053 character set arguments.
1055 * Makefile.am: Snarfed some variables from the guile-readline
1058 * srfi-14.c, srfi-14.h: Add prefix SCM_ to exported macros.
1060 * srfi-13.scm, srfi-14.scm, srfi-13.c, srfi-14.c, srfi-14.h,
1061 configure.in, Makefile.am: Added FSF copyright and Guile license
1064 * srfi-13.c, srfi-14.c: Include srfi-14.h.
1065 (scm_init_srfi_13_14): Initialize the complete module, if not
1068 * srfi-14.h: New file.
1070 * srfi-13.scm, srfi-14.scm: Load new combined library.
1072 * Makefile.am: Build only one library,
1073 `libguile-srfi-srfi-13-14.la'
1075 2001-04-04 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1077 * guile-srfi.texi: Integrated the SRFI-14 documentation.
1079 * srfi-14.c, srfi-14.scm: Made the procedures and variables
1080 compliant to the final SRFI document.
1082 * Renamed the package to guile-srfi.
1084 2001-04-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1086 * NEWS: New section for 0.0.3.
1088 * configure.in, README, guile-srfi-13.texi: Bumped version number
1091 * Released version 0.0.2.
1093 * Makefile.am: Added rules for builing the SRFI-14 library.
1095 * srfi-14.c, srfi-14.scm: New files, implementing SRFI-14
1096 (character set library).
1098 2001-03-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1100 * README: Updated procedure and incompatibility list.
1102 * srfi-13.c (string_upcase_x, scm_string_upcase_xS),
1103 (scm_string_upcase, string_downcase_x, scm_string_downcase_xS),
1104 (scm_string_downcaseS, string_titlecase_x),
1105 (scm_string_titlecase_x, scm_string_titlecase),
1106 (scm_string_fill_xS, scm_string_copyS, scm_string_to_listS): New
1109 * srfi-13.scm: Export new case mapping procedures.
1111 * guile-srfi-13.texi (What cannot be done): Removed case mapping
1112 procedures from incompatibility list.
1113 (Case Mapping): New section for case mapping procedures.
1115 2001-03-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1117 * NEWS: New section for 0.0.2
1119 * configure.in, README, guile-srfi-13.texi: Bumbed version number
1122 * Released version 0.0.1.
1124 * README: Made procedure list up-to-date.
1126 * guile-srfi-13.texi: Fixed typos, completed reference and added
1129 * srfi-13.c, srfi-13.scm: Filled in the last missing pieces.
1131 2001-03-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1133 * Started guile-srfi-13 package. Files are copied from the
1134 guile-gdbm and slightly modified.