*** empty log message ***
[bpt/guile.git] / srfi / ChangeLog
1 2001-08-25 Thien-Thi Nguyen <ttn@revel.glug.org>
2
3 * srfi-19.scm (add-duration): Fix bug: Call `add-duration!' w/
4 two args. Thanks to Alex Shinn.
5
6 2001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
7
8 * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu".
9
10 2001-08-24 Thien-Thi Nguyen <ttn@revel.glug.org>
11
12 * srfi-13.h (scm_string_map, scm_string_map_x,
13 scm_string_for_each): Reverse order of first two args.
14 (scm_string_for_each_index): New proc.
15
16 * srfi-13.c (scm_string_for_each): Reverse order of first 2 args.
17 (scm_string_for_each_index): New func.
18
19 * srfi-13.scm (string-for-each-index): New exported proc.
20
21 Thanks to Alex Shinn.
22
23 2001-08-22 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
24
25 * srfi-13.c (string-map): Swapped order of string and proc args to
26 conform with the srfi. (Thanks to Alex Shinn.)
27
28 2001-08-05 Gary Houston <ghouston@arglist.com>
29
30 * srfi-1.scm (check-arg-type, non-negative-integer?): a couple of new
31 internal definitions.
32 (list-tabulate, iota): check for bad arguments that otherwise
33 give weird output.
34 (filter): check for proper list, to avoid infinite recursion on
35 a circular list.
36
37 2001-08-04 Gary Houston <ghouston@arglist.com>
38
39 * srfi-1.scm (filter): replaced with a tail-recursive version.
40 (remove): implement using filter, to make it tail-recursive.
41
42 2001-07-31 Gary Houston <ghouston@arglist.com>
43
44 * srfi-14.c (scm_char_set_diff_plus_intersection): wasn't correctly
45 accounting for the (char-set-union cs2...) in the spec. i.e.,
46 (char-set-diff+intersection a) -> copy-of-a, empty-set
47 and the following are equivalent:
48 (char-set-diff+intersection a (char-set #\a) (char-set #\b))
49 (char-set-diff+intersection a (char-set #\a #\b))
50
51 (scm_char_set_xor_x): disabled the side-effecting code, since it
52 gives inconsistent results to scm_char_set_xor for the case
53 (char-set-xor! a a a).
54
55 (scm_char_set_diff_plus_intersection_x): added cs2 argument, since
56 two arguments are compulsory in final spec. also similar changes
57 as for scm_char_set_diff_plus_intersection.
58 * srfi-14.h (scm_char_set_diff_plus_intersection_x): added cs2.
59
60 2001-07-22 Gary Houston <ghouston@arglist.com>
61
62 * srfi-14.c (scm_char_set_intersection, scm_char_set_xor): remove
63 the compulsory cs1 arguments: all args are optional in final spec.
64
65 * srfi-14.h: declarations updated.
66
67 2001-07-18 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
68
69 * srfi-11.scm, srfi-8.scm: Update copyright notice.
70
71 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
72
73 * srfi-14.c: Okay. Now I got it. Really. This time it's fixed.
74 Guaranteed. (Maybe)
75
76 * srfi-19.scm: Define `current-time' before exporting it.
77
78 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
79
80 * srfi-14.c: Fix for bug caused by brain-malfunctioning on my
81 side. Bit sets were handled wrong because I couldn't tell bit
82 counts from byte counts. Also, the bit array should be 256 / 8
83 bytes long. Thank you, Gary!
84
85 Removed unnecessary protoype for scm_char_set_copy.
86
87 2001-07-16 Gary Houston <ghouston@arglist.com>
88
89 * srfi-14.scm: export string->char-set!, not string-char-set!.
90
91 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next,
92 scm_end_of_char_set_p): reject negative cursor values.
93 (scm_list_to_char_set, scm_list_to_char_set_x): when reporting
94 type error in list component, omit the position (was always 1).
95
96 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
97
98 (scm_char_set_map): Bug-fix: char-set-map was modifying the
99 argument instead of the return value.
100
101 2001-07-16 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
102
103 * srfi-14.c: Allocate correct memory size for charsets (32 bytes),
104 use this value for initializing and comparing charsets.
105 (scm_char_set_hash): Use ``better'' hash algorithm which produces
106 more values.
107
108 2001-07-15 Gary Houston <ghouston@arglist.com>
109
110 * srfi-14.c (scm_char_set_hash): recognise 0 instead of #f in the
111 opt arg to give default bound, as in final spec. don't allow
112 negative bounds.
113 (scm_char_set_hash): bug fix: was overrunning the buffer and
114 calculating based on garbage.
115 (scm_char_set_eq, scm_char_set_leq): fix argument number in error
116 reporting: wasn't incremented due to macro coding.
117 (scm_char_set): report argument number in error reporting: was
118 hard coded to 1. remove a couple of local variables.
119
120 2001-07-13 Marius Vollmer <mvo@zagadka.ping.de>
121
122 * srfi-2.scm (and-let*): Use `re-export-syntax' instead of
123 `export-syntax'.
124
125 2001-07-11 Gary Houston <ghouston@arglist.com>
126
127 * srfi-14.c (s_scm_char_set_eq): bug fix: (char-set=) should
128 return #t instead of giving wrong-number-of-arguments . take a
129 single "rest" argument. use memcmp instead of a loop to compare
130 the values.
131 (s_scm_char_set_leq): similarly, (char-set<=) should return #t.
132 take a single "rest" argument.
133 srfi-14.h: update the declarations.
134
135 2001-07-09 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
136
137 * README: Cleanup.
138
139 2001-07-06 Gary Houston <ghouston@arglist.com>
140
141 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
142 delete!, assoc): roll back the previous change. instead place
143 dummy definitions in a deprecated block at the beginning as in
144 srfi-13.scm.
145
146 2001-07-06 Rob Browning <rlb@defaultvalue.org>
147
148 * srfi-19.scm (priv:locale-reader): don't need open-output-string.
149
150 2001-07-03 Gary Houston <ghouston@arglist.com>
151
152 * srfi-1.scm (iota, map, for-each, list-index, member, delete,
153 delete!, assoc): don't export until the new bindings have been
154 created. otherwise "export" thinks they are being re-exported and
155 a deprecation warning is produced.
156 (map-in-order): defined and exported, to support lists of unequal
157 length.
158
159 2001-07-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
160
161 * srfi-1.scm (list-tabulate): Do not go into infinite loop for
162 invalid arguments. Same fix for several other procedures (do not
163 use zero?, use <= 0).
164
165 2001-07-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
166
167 * srfi-1.scm: Replaced calls to `map' in several procedures to
168 calls to `map1'.
169 (map, for-each): New procedures, extended from R5RS.
170
171 2001-06-28 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
172
173 * srfi-4.c: Minor cleanups.
174
175 * srfi-14.c (scm_char_set_fold, scm_char_set_unfold)
176 (scm_char_set_unfold_x, scm_char_set_for_each)
177 (scm_char_set_map, scm_char_set_filter)
178 (scm_char_set_filter_x, scm_char_set_count)
179 (scm_char_set_every, scm_char_set_any): Replace calls to
180 scm_apply() with the corresponding scm_call_N() functions.
181
182 * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next)
183 (scm_char_set_unfold, scm_char_set_unfold_x)
184 (scm_char_set_map, scm_char_set_diff_plus_intersection)
185 (scm_char_set_diff_plus_intersection_x): Replace deprecated macros
186 SCM_LISTN with calls to scm_list_N().
187
188 * srfi-13.c (scm_string_tabulate, scm_string_map)
189 (scm_string_map_x, scm_string_unfold)
190 (scm_string_unfold_right): Replace deprecated macros SCM_LISTN
191 with calls to scm_list_N().
192
193 * srfi-13.c (scm_string_any, scm_string_every),
194 (scm_string_tabulate, scm_string_trim),
195 (scm_string_trim_right, scm_string_trim_both),
196 (scm_string_compare, scm_string_compare_ci),
197 (scm_string_indexS, scm_string_index_right),
198 (scm_string_skip, scm_string_skip_right, scm_string_count),
199 (scm_string_map, scm_string_map_x, scm_string_fold),
200 (scm_string_fold_right, scm_string_unfold),
201 (scm_string_unfold_right, scm_string_for_each),
202 (scm_string_filter, scm_string_delete): Replace calls to
203 scm_apply() with the corresponding scm_call_N() functions.
204
205 2001-06-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
206
207 * Makefile.am: Added SRFI-4 files in various places.
208
209 * srfi-4.c, srfi-4.h, srfi-4.scm: New files implementing SRFI-4.
210
211 2001-06-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
212
213 * srfi-13.c (scm_string_copyS, scm_string_take, scm_string_drop,
214 scm_string_take_right, scm_string_drop_right, scm_string_trim,
215 scm_string_trim_right, scm_string_trim_both, scm_string_tokenize):
216 Use scm_mem2string instead of scm_makfromstr.
217
218 (scm_reverse_list_to_string, string_titlecase_x): Prefer
219 !SCM_<pred> over SCM_N<pred>.
220
221 2001-06-25 Marius Vollmer <mvo@zagadka.ping.de>
222
223 * srfi-8.scm: Use `re-export-syntax' to correctly re-export
224 `receive'.
225
226 2001-06-18 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
227
228 The SRFI-19 implementation was completely broken. Already the
229 reference implementation did not handle DST and time zones
230 properly and relied on non-R5RS-isms like passing reals to
231 `quotient'. For Guile, some additional fixes were needed because
232 of the incomplete numeric tower implementation. See also
233 srfi-19.test.
234
235 * srfi-19.scm (date-zone-offset): Fixed typo in export clause.
236 (add-duration): Renamed from priv:add-duration.
237 (priv:time-normalize!): Handle fractional nanoseconds; remove
238 duplicate definition.
239 (priv:current-time-tai): Fixed typo.
240 (time=?, time<=?): Fixed typos.
241 (time-tai->time-utc, time-utc->time-tai,
242 time-utc->time-monotonic): Use make-time-unnormalized instead of
243 make-time when uninitialized time fields are used.
244 (set-date-nanosecond!, set-date-second!, set-date-minute!,
245 set-date-hour!, set-date-day!, set-date-month!, set-date-year!,
246 set-date-zone-offset!): Define.
247 (priv:local-tz-offset): Take an extra argument in order to handle
248 DST effects.
249 (time-utc->date, time-tai->date, time-monotonic->date): Handle the
250 changed signature of priv:local-tz-offset. Don't pass non-integer
251 arguments to quotient (non-R5RS, not supported by Guile).
252 (date->time-utc): Ensure that seconds in a date structure are
253 always exact integers. Handle DST properly.
254 (current-date, julian-day->date, modified-julian-day->date):
255 Handle the changed signature of priv:local-tz-offset.
256 (julian-day->time-utc): Reverted earlier inexact->exact hack;
257 make-time now handles inexact arguments.
258 (priv:locale-print-time-zone): At least print the numerical time
259 zone.
260 (priv:integer-reader): Fixed named let iteration.
261 (priv:read-directives): Use set-date-month! instead of
262 priv:set-date-month! etc.
263 (string->date): Handle DST properly.
264
265 2001-06-14 Marius Vollmer <mvo@zagadka.ping.de>
266
267 * srfi-13.scm: Prevent `export' from re-exporting core bindings.
268
269 2001-06-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
270
271 * srfi-14.c (charset_print): Mark unused parameters with
272 SCM_UNUSED.
273
274 2001-06-07 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
275
276 * srfi-1.scm (fold, fold-pair): Fixed a buggy call to apply.
277 (delete-duplicates): Now the first occurrence of an element is
278 retained, as required.
279 (member, assoc): Fixed wrong order of equality predicate
280 application.
281
282 2001-06-06 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
283
284 * README: Update.
285
286 * srfi-1.scm: New file.
287
288 2001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
289
290 Added exception notice to all files.
291
292 2001-05-31 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
293
294 * srfi-14.scm, srfi-13.scm: Use `load-extension' for loading the
295 shared library.
296
297 2001-05-31 Michael Livshin <mlivshin@bigfoot.com>
298
299 * Makefile.am (MKDEP): copied from libguile/Makefile.am, just in
300 case.
301 (CLEANFILES): added *.x (and removed from DISTCLEANFILES)
302
303 2001-05-28 Michael Livshin <mlivshin@bigfoot.com>
304
305 * srfi-19.scm: removed a stray open parenthesis. (thanks to
306 Matthias Köppe for the report).
307
308 2001-05-23 Rob Browning <rlb@cs.utexas.edu>
309
310 * srfi-19.scm (:optional): renamed to optional to avoid reader
311 keywords conflict. Time passes... Removed :optional altogether
312 and just handle optional args directly. Thanks to Matthias Koeppe
313 for the report of this and the two bits below.
314 (priv:decode-julian-day-number): add inexact->exact for truncate
315 result.
316 (time-utc->date): add inexact->exact and floor so quotient will
317 work.
318
319 2001-05-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
320
321 * README: Update, document available SRFIs.
322
323 2001-05-21 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
324
325 * srfi-19.scm, srfi-17.scm, srfi-16.scm, srfi-14.scm, srfi-13.scm,
326 srfi-11.scm, srfi-10.scm, srfi-9.scm, srfi-8.scm, srfi-6.scm,
327 srfi-2.scm: Use `cond-expand-provide' for providing features to
328 `cond-expand'.
329
330 2001-05-20 Marius Vollmer <mvo@zagadka.ping.de>
331
332 * srfi-14.c (scm_c_init_srfi_14): Added "int" to declaration of
333 `initialized'.
334
335 2001-05-19 Marius Vollmer <mvo@zagadka.ping.de>
336
337 Avoid using module operations from C.
338
339 * srfi-13.c (scm_init_srfi_13_14): Removed.
340 * srfi-14.h, srfi-14.c (scm_c_init_srfi_14): New. Contains
341 initializations needed by C clients of srfi-14.
342 (scm_init_srfi_13, scm_init_srfi_14): Call it.
343 * srfi-13.scm: Call "scm_init_srfi_13" instead of
344 "scm_init_srfi_13_14".
345 * srfi-14.scm: Call "scm_init_srfi_14" instead of
346 "scm_init_srfi_13_14".
347
348 2001-05-16 Rob Browning <rlb@cs.utexas.edu>
349
350 * srfi-19.scm (priv:integer-reader-exact): minor cleanups.
351
352 2001-05-14 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
353
354 * Makefile.am (srfi_DATA): Added srfi-16.scm.
355
356 * srfi-16.scm: New file.
357
358 2001-05-10 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
359
360 * srfi-13.c (scm_string_delete): Logic was inversed for charset.
361 Fixed.
362
363 2001-05-08 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
364
365 * srfi-13.c (scm_string_copyS): Fixed nasty bug.
366
367 2001-05-05 Rob Browning <rlb@cs.utexas.edu>
368
369 * Makefile.am (srfi_DATA): added srfi-19.scm.
370
371 * srfi-19.scm: New file - time/date SRFI. Thanks to Will
372 Fitzgerald.
373
374 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
375
376 * srfi-14.c, srfi-13.c: Added @bullet to various @itemize lists.
377
378 * srfi-10.scm: Typo fix.
379
380 2001-05-02 Rob Browning <rlb@cs.utexas.edu>
381
382 * srfi-11.scm (let-values): fix (a b c . d) case. Thanks Martin.
383
384 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
385
386 * Makefile.am (srfi_DATA): Added srfi-10.scm and srfi-17.scm.
387
388 * srfi-10.scm: New file.
389
390 * srfi-17.scm: New file, contributed by Matthias Koeppe. Thanks a
391 lot!
392 Added `Commentary:' tag.
393
394 * srfi-9.scm: Added `Commentary:' tag.
395
396 2001-04-27 Rob Browning <rlb@cs.utexas.edu>
397
398 * srfi-13.h
399 (scm_reverse_string_concatenate): renamed to
400 scm_string_concatentate_reverse.
401 (scm_reverse_string_concatenate_shared): renamed to
402 scm_string_concatenate_reverse_shared.
403
404 2001-04-27 Gary Houston <ghouston@arglist.com>
405
406 * srfi-13.c (scm_init_srfi_13), srfi-14.c (scm_init_srfi_14):
407 add "srfi/" to lines including .x files so they can be found
408 when build_dir != src_dir.
409
410 2001-04-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
411
412 * Makefile.am (srfi_DATA): Added srfi-9.scm.
413
414 * srfi-9.scm: New file. Exports `define-record-type'.
415
416 2001-04-26 Rob Browning <rlb@cs.utexas.edu>
417
418 * Makefile.am (srfi_DATA): added srfi-6.scm.
419 (srfi_DATA): added srfi-11.scm.
420 (srfi_DATA): added srfi-8.scm.
421 (srfi_DATA): added srfi-2.scm.
422
423 * srfi-11.scm: new file - exports let-values and let*-values.
424
425 * srfi-6.scm: new file - guile already has srfi-6 procedures
426 loaded by default, so this is a dummy file right now.
427
428 * srfi-8.scm: new file - exports receive.
429
430 * srfi-2.scm: new file - just use/export (ice-9 and-let-star)
431
432 2001-04-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
433
434 Changed two procedure names to match final SRFI document. Thanks
435 to Rob Browning for spotting this.
436
437 * srfi-13.scm (string-concatenate-reverse),
438 (string-concatenate-reverse/shared): Rename from
439 reverse-string-concatenate[/shared].
440
441 * srfi-13.c (scm_string_concatenate_reverse_shared): Renamed from
442 scm_reverse_string_concatenate_shared.
443 (scm_string_concatenate_reverse): Renamed from
444 scm_reverse_string_concatenate.
445
446 2001-04-25 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
447
448 * configure.in, autogen.sh: Removed.
449
450 * srfi-13.c (scm_string_replace): Take sizeof (char) into account
451 when using memmove().
452
453 * srfi-14.h: Added prototypes for all exported procedures..
454
455 * srfi-13.c: Include srfi-13.h
456
457 * srfi-13.h: New file containing the prototypes.
458
459 * Makefile.am: Removed guile-srfi.texi and info_TEXINFOS variable.
460 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-14.h, so it gets
461 distributed.
462 (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-13.h.
463
464 2001-04-24 Neil Jerram <neil@ossau.uklinux.net>
465
466 * Makefile.am: Fixed "srf-14.x" typo.
467
468 2001-04-24 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
469
470 * guile-srfi.texi: Removed, because merged with the GRM.
471
472 * guile-srfi.texi: The docs are now up to date with the
473 implementation and have new introductory material.
474
475 2001-04-23 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
476
477 Integrated the guile-srfi package into the Guile distribution.
478
479 * srfi-13.c: All procedures so specified in the SRFI now accept
480 character set arguments.
481
482 * Makefile.am: Snarfed some variables from the guile-readline
483 directory.
484
485 * srfi-14.c, srfi-14.h: Add prefix SCM_ to exported macros.
486
487 * srfi-13.scm, srfi-14.scm, srfi-13.c, srfi-14.c, srfi-14.h,
488 configure.in, Makefile.am: Added FSF copyright and Guile license
489 information.
490
491 * srfi-13.c, srfi-14.c: Include srfi-14.h.
492 (scm_init_srfi_13_14): Initialize the complete module, if not
493 already done so.
494
495 * srfi-14.h: New file.
496
497 * srfi-13.scm, srfi-14.scm: Load new combined library.
498
499 * Makefile.am: Build only one library,
500 `libguile-srfi-srfi-13-14.la'
501
502 2001-04-04 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
503
504 * guile-srfi.texi: Integrated the SRFI-14 documentation.
505
506 * srfi-14.c, srfi-14.scm: Made the procedures and variables
507 compliant to the final SRFI document.
508
509 * Renamed the package to guile-srfi.
510
511 2001-04-03 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
512
513 * NEWS: New section for 0.0.3.
514
515 * configure.in, README, guile-srfi-13.texi: Bumped version number
516 to 0.0.3.
517
518 * Released version 0.0.2.
519
520 * Makefile.am: Added rules for builing the SRFI-14 library.
521
522 * srfi-14.c, srfi-14.scm: New files, implementing SRFI-14
523 (character set library).
524
525 2001-03-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
526
527 * README: Updated procedure and incompatibility list.
528
529 * srfi-13.c (string_upcase_x, scm_string_upcase_xS),
530 (scm_string_upcase, string_downcase_x, scm_string_downcase_xS),
531 (scm_string_downcaseS, string_titlecase_x),
532 (scm_string_titlecase_x, scm_string_titlecase),
533 (scm_string_fill_xS, scm_string_copyS, scm_string_to_listS): New
534 procedures.
535
536 * srfi-13.scm: Export new case mapping procedures.
537
538 * guile-srfi-13.texi (What cannot be done): Removed case mapping
539 procedures from incompatibility list.
540 (Case Mapping): New section for case mapping procedures.
541
542 2001-03-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
543
544 * NEWS: New section for 0.0.2
545
546 * configure.in, README, guile-srfi-13.texi: Bumbed version number
547 to 0.0.2
548
549 * Released version 0.0.1.
550
551 * README: Made procedure list up-to-date.
552
553 * guile-srfi-13.texi: Fixed typos, completed reference and added
554 introductory blurb.
555
556 * srfi-13.c, srfi-13.scm: Filled in the last missing pieces.
557
558 2001-03-22 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
559
560 * Started guile-srfi-13 package. Files are copied from the
561 guile-gdbm and slightly modified.