2001-09-21 Rob Browning * srfi-14.h (SCM_CHARSET_GET): need 1L, not just 1 in "<<". * srfi-14.c (SCM_CHARSET_SET): need 1L, not just 1 in "<<". (scm_char_set_hash): val needs to be long, not just unsigned. (scm_char_set): need 1L, not just 1 in "<<". (scm_list_to_char_set): need 1L, not just 1 in "<<". (scm_list_to_char_set_x): need 1L, not just 1 in "<<". (scm_list_to_char_set_x): FUNC_NAME was wrong - added a _x. (scm_string_to_char_set): string length var needed to be scm_sizet, not int. (scm_string_to_char_set): need 1L, not just 1 in "<<". (scm_string_to_char_set_x): string length var needed to be scm_sizet, not int. (scm_string_to_char_set_x): need 1L, not just 1 in "<<". (scm_char_set_filter): need 1L, not just 1 in "<<". (scm_char_set_filter_x): need 1L, not just 1 in "<<". (scm_ucs_range_to_char_set): need 1L, not just 1 in "<<". (scm_ucs_range_to_char_set_x): need 1L, not just 1 in "<<". (scm_char_set_adjoin): need 1L, not just 1 in "<<". (scm_char_set_delete): need 1L, not just 1 in "<<". (scm_char_set_adjoin_x): need 1L, not just 1 in "<<". (scm_char_set_delete_x): need 1L, not just 1 in "<<". 2001-09-12 Gary Houston * srfi-1.scm (filter): change "caller" to "filter" in check-arg-type. 2001-08-31 Dirk Herrmann * srfi-1.scm, srfi-13.scm: Remove the defines that were needed to trick export from the beginning of the files. 2001-08-25 Thien-Thi Nguyen * srfi-19.scm (add-duration): Fix bug: Call `add-duration!' w/ two args. Thanks to Alex Shinn. 2001-08-25 Marius Vollmer * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu". 2001-08-24 Thien-Thi Nguyen * srfi-13.h (scm_string_map, scm_string_map_x, scm_string_for_each): Reverse order of first two args. (scm_string_for_each_index): New proc. * srfi-13.c (scm_string_for_each): Reverse order of first 2 args. (scm_string_for_each_index): New func. * srfi-13.scm (string-for-each-index): New exported proc. Thanks to Alex Shinn. 2001-08-22 Mikael Djurfeldt * srfi-13.c (string-map): Swapped order of string and proc args to conform with the srfi. (Thanks to Alex Shinn.) 2001-08-05 Gary Houston * srfi-1.scm (check-arg-type, non-negative-integer?): a couple of new internal definitions. (list-tabulate, iota): check for bad arguments that otherwise give weird output. (filter): check for proper list, to avoid infinite recursion on a circular list. 2001-08-04 Gary Houston * srfi-1.scm (filter): replaced with a tail-recursive version. (remove): implement using filter, to make it tail-recursive. 2001-07-31 Gary Houston * srfi-14.c (scm_char_set_diff_plus_intersection): wasn't correctly accounting for the (char-set-union cs2...) in the spec. i.e., (char-set-diff+intersection a) -> copy-of-a, empty-set and the following are equivalent: (char-set-diff+intersection a (char-set #\a) (char-set #\b)) (char-set-diff+intersection a (char-set #\a #\b)) (scm_char_set_xor_x): disabled the side-effecting code, since it gives inconsistent results to scm_char_set_xor for the case (char-set-xor! a a a). (scm_char_set_diff_plus_intersection_x): added cs2 argument, since two arguments are compulsory in final spec. also similar changes as for scm_char_set_diff_plus_intersection. * srfi-14.h (scm_char_set_diff_plus_intersection_x): added cs2. 2001-07-22 Gary Houston * srfi-14.c (scm_char_set_intersection, scm_char_set_xor): remove the compulsory cs1 arguments: all args are optional in final spec. * srfi-14.h: declarations updated. 2001-07-18 Martin Grabmueller * srfi-11.scm, srfi-8.scm: Update copyright notice. 2001-07-17 Martin Grabmueller * srfi-14.c: Okay. Now I got it. Really. This time it's fixed. Guaranteed. (Maybe) * srfi-19.scm: Define `current-time' before exporting it. 2001-07-17 Martin Grabmueller * srfi-14.c: Fix for bug caused by brain-malfunctioning on my side. Bit sets were handled wrong because I couldn't tell bit counts from byte counts. Also, the bit array should be 256 / 8 bytes long. Thank you, Gary! Removed unnecessary protoype for scm_char_set_copy. 2001-07-16 Gary Houston * srfi-14.scm: export string->char-set!, not string-char-set!. * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next, scm_end_of_char_set_p): reject negative cursor values. (scm_list_to_char_set, scm_list_to_char_set_x): when reporting type error in list component, omit the position (was always 1). 2001-07-16 Martin Grabmueller (scm_char_set_map): Bug-fix: char-set-map was modifying the argument instead of the return value. 2001-07-16 Martin Grabmueller * srfi-14.c: Allocate correct memory size for charsets (32 bytes), use this value for initializing and comparing charsets. (scm_char_set_hash): Use ``better'' hash algorithm which produces more values. 2001-07-15 Gary Houston * srfi-14.c (scm_char_set_hash): recognise 0 instead of #f in the opt arg to give default bound, as in final spec. don't allow negative bounds. (scm_char_set_hash): bug fix: was overrunning the buffer and calculating based on garbage. (scm_char_set_eq, scm_char_set_leq): fix argument number in error reporting: wasn't incremented due to macro coding. (scm_char_set): report argument number in error reporting: was hard coded to 1. remove a couple of local variables. 2001-07-13 Marius Vollmer * srfi-2.scm (and-let*): Use `re-export-syntax' instead of `export-syntax'. 2001-07-11 Gary Houston * srfi-14.c (s_scm_char_set_eq): bug fix: (char-set=) should return #t instead of giving wrong-number-of-arguments . take a single "rest" argument. use memcmp instead of a loop to compare the values. (s_scm_char_set_leq): similarly, (char-set<=) should return #t. take a single "rest" argument. srfi-14.h: update the declarations. 2001-07-09 Martin Grabmueller * README: Cleanup. 2001-07-06 Gary Houston * srfi-1.scm (iota, map, for-each, list-index, member, delete, delete!, assoc): roll back the previous change. instead place dummy definitions in a deprecated block at the beginning as in srfi-13.scm. 2001-07-06 Rob Browning * srfi-19.scm (priv:locale-reader): don't need open-output-string. 2001-07-03 Gary Houston * srfi-1.scm (iota, map, for-each, list-index, member, delete, delete!, assoc): don't export until the new bindings have been created. otherwise "export" thinks they are being re-exported and a deprecation warning is produced. (map-in-order): defined and exported, to support lists of unequal length. 2001-07-03 Martin Grabmueller * srfi-1.scm (list-tabulate): Do not go into infinite loop for invalid arguments. Same fix for several other procedures (do not use zero?, use <= 0). 2001-07-02 Martin Grabmueller * srfi-1.scm: Replaced calls to `map' in several procedures to calls to `map1'. (map, for-each): New procedures, extended from R5RS. 2001-06-28 Martin Grabmueller * srfi-4.c: Minor cleanups. * srfi-14.c (scm_char_set_fold, scm_char_set_unfold) (scm_char_set_unfold_x, scm_char_set_for_each) (scm_char_set_map, scm_char_set_filter) (scm_char_set_filter_x, scm_char_set_count) (scm_char_set_every, scm_char_set_any): Replace calls to scm_apply() with the corresponding scm_call_N() functions. * srfi-14.c (scm_char_set_ref, scm_char_set_cursor_next) (scm_char_set_unfold, scm_char_set_unfold_x) (scm_char_set_map, scm_char_set_diff_plus_intersection) (scm_char_set_diff_plus_intersection_x): Replace deprecated macros SCM_LISTN with calls to scm_list_N(). * srfi-13.c (scm_string_tabulate, scm_string_map) (scm_string_map_x, scm_string_unfold) (scm_string_unfold_right): Replace deprecated macros SCM_LISTN with calls to scm_list_N(). * srfi-13.c (scm_string_any, scm_string_every), (scm_string_tabulate, scm_string_trim), (scm_string_trim_right, scm_string_trim_both), (scm_string_compare, scm_string_compare_ci), (scm_string_indexS, scm_string_index_right), (scm_string_skip, scm_string_skip_right, scm_string_count), (scm_string_map, scm_string_map_x, scm_string_fold), (scm_string_fold_right, scm_string_unfold), (scm_string_unfold_right, scm_string_for_each), (scm_string_filter, scm_string_delete): Replace calls to scm_apply() with the corresponding scm_call_N() functions. 2001-06-27 Martin Grabmueller * Makefile.am: Added SRFI-4 files in various places. * srfi-4.c, srfi-4.h, srfi-4.scm: New files implementing SRFI-4. 2001-06-26 Dirk Herrmann * srfi-13.c (scm_string_copyS, scm_string_take, scm_string_drop, scm_string_take_right, scm_string_drop_right, scm_string_trim, scm_string_trim_right, scm_string_trim_both, scm_string_tokenize): Use scm_mem2string instead of scm_makfromstr. (scm_reverse_list_to_string, string_titlecase_x): Prefer !SCM_ over SCM_N. 2001-06-25 Marius Vollmer * srfi-8.scm: Use `re-export-syntax' to correctly re-export `receive'. 2001-06-18 Matthias Koeppe The SRFI-19 implementation was completely broken. Already the reference implementation did not handle DST and time zones properly and relied on non-R5RS-isms like passing reals to `quotient'. For Guile, some additional fixes were needed because of the incomplete numeric tower implementation. See also srfi-19.test. * srfi-19.scm (date-zone-offset): Fixed typo in export clause. (add-duration): Renamed from priv:add-duration. (priv:time-normalize!): Handle fractional nanoseconds; remove duplicate definition. (priv:current-time-tai): Fixed typo. (time=?, time<=?): Fixed typos. (time-tai->time-utc, time-utc->time-tai, time-utc->time-monotonic): Use make-time-unnormalized instead of make-time when uninitialized time fields are used. (set-date-nanosecond!, set-date-second!, set-date-minute!, set-date-hour!, set-date-day!, set-date-month!, set-date-year!, set-date-zone-offset!): Define. (priv:local-tz-offset): Take an extra argument in order to handle DST effects. (time-utc->date, time-tai->date, time-monotonic->date): Handle the changed signature of priv:local-tz-offset. Don't pass non-integer arguments to quotient (non-R5RS, not supported by Guile). (date->time-utc): Ensure that seconds in a date structure are always exact integers. Handle DST properly. (current-date, julian-day->date, modified-julian-day->date): Handle the changed signature of priv:local-tz-offset. (julian-day->time-utc): Reverted earlier inexact->exact hack; make-time now handles inexact arguments. (priv:locale-print-time-zone): At least print the numerical time zone. (priv:integer-reader): Fixed named let iteration. (priv:read-directives): Use set-date-month! instead of priv:set-date-month! etc. (string->date): Handle DST properly. 2001-06-14 Marius Vollmer * srfi-13.scm: Prevent `export' from re-exporting core bindings. 2001-06-07 Dirk Herrmann * srfi-14.c (charset_print): Mark unused parameters with SCM_UNUSED. 2001-06-07 Martin Grabmueller * srfi-1.scm (fold, fold-pair): Fixed a buggy call to apply. (delete-duplicates): Now the first occurrence of an element is retained, as required. (member, assoc): Fixed wrong order of equality predicate application. 2001-06-06 Martin Grabmueller * README: Update. * srfi-1.scm: New file. 2001-06-04 Marius Vollmer Added exception notice to all files. 2001-05-31 Martin Grabmueller * srfi-14.scm, srfi-13.scm: Use `load-extension' for loading the shared library. 2001-05-31 Michael Livshin * Makefile.am (MKDEP): copied from libguile/Makefile.am, just in case. (CLEANFILES): added *.x (and removed from DISTCLEANFILES) 2001-05-28 Michael Livshin * srfi-19.scm: removed a stray open parenthesis. (thanks to Matthias Köppe for the report). 2001-05-23 Rob Browning * srfi-19.scm (:optional): renamed to optional to avoid reader keywords conflict. Time passes... Removed :optional altogether and just handle optional args directly. Thanks to Matthias Koeppe for the report of this and the two bits below. (priv:decode-julian-day-number): add inexact->exact for truncate result. (time-utc->date): add inexact->exact and floor so quotient will work. 2001-05-22 Martin Grabmueller * README: Update, document available SRFIs. 2001-05-21 Martin Grabmueller * srfi-19.scm, srfi-17.scm, srfi-16.scm, srfi-14.scm, srfi-13.scm, srfi-11.scm, srfi-10.scm, srfi-9.scm, srfi-8.scm, srfi-6.scm, srfi-2.scm: Use `cond-expand-provide' for providing features to `cond-expand'. 2001-05-20 Marius Vollmer * srfi-14.c (scm_c_init_srfi_14): Added "int" to declaration of `initialized'. 2001-05-19 Marius Vollmer Avoid using module operations from C. * srfi-13.c (scm_init_srfi_13_14): Removed. * srfi-14.h, srfi-14.c (scm_c_init_srfi_14): New. Contains initializations needed by C clients of srfi-14. (scm_init_srfi_13, scm_init_srfi_14): Call it. * srfi-13.scm: Call "scm_init_srfi_13" instead of "scm_init_srfi_13_14". * srfi-14.scm: Call "scm_init_srfi_14" instead of "scm_init_srfi_13_14". 2001-05-16 Rob Browning * srfi-19.scm (priv:integer-reader-exact): minor cleanups. 2001-05-14 Martin Grabmueller * Makefile.am (srfi_DATA): Added srfi-16.scm. * srfi-16.scm: New file. 2001-05-10 Martin Grabmueller * srfi-13.c (scm_string_delete): Logic was inversed for charset. Fixed. 2001-05-08 Martin Grabmueller * srfi-13.c (scm_string_copyS): Fixed nasty bug. 2001-05-05 Rob Browning * Makefile.am (srfi_DATA): added srfi-19.scm. * srfi-19.scm: New file - time/date SRFI. Thanks to Will Fitzgerald. 2001-05-02 Martin Grabmueller * srfi-14.c, srfi-13.c: Added @bullet to various @itemize lists. * srfi-10.scm: Typo fix. 2001-05-02 Rob Browning * srfi-11.scm (let-values): fix (a b c . d) case. Thanks Martin. 2001-05-02 Martin Grabmueller * Makefile.am (srfi_DATA): Added srfi-10.scm and srfi-17.scm. * srfi-10.scm: New file. * srfi-17.scm: New file, contributed by Matthias Koeppe. Thanks a lot! Added `Commentary:' tag. * srfi-9.scm: Added `Commentary:' tag. 2001-04-27 Rob Browning * srfi-13.h (scm_reverse_string_concatenate): renamed to scm_string_concatentate_reverse. (scm_reverse_string_concatenate_shared): renamed to scm_string_concatenate_reverse_shared. 2001-04-27 Gary Houston * srfi-13.c (scm_init_srfi_13), srfi-14.c (scm_init_srfi_14): add "srfi/" to lines including .x files so they can be found when build_dir != src_dir. 2001-04-27 Martin Grabmueller * Makefile.am (srfi_DATA): Added srfi-9.scm. * srfi-9.scm: New file. Exports `define-record-type'. 2001-04-26 Rob Browning * Makefile.am (srfi_DATA): added srfi-6.scm. (srfi_DATA): added srfi-11.scm. (srfi_DATA): added srfi-8.scm. (srfi_DATA): added srfi-2.scm. * srfi-11.scm: new file - exports let-values and let*-values. * srfi-6.scm: new file - guile already has srfi-6 procedures loaded by default, so this is a dummy file right now. * srfi-8.scm: new file - exports receive. * srfi-2.scm: new file - just use/export (ice-9 and-let-star) 2001-04-26 Martin Grabmueller Changed two procedure names to match final SRFI document. Thanks to Rob Browning for spotting this. * srfi-13.scm (string-concatenate-reverse), (string-concatenate-reverse/shared): Rename from reverse-string-concatenate[/shared]. * srfi-13.c (scm_string_concatenate_reverse_shared): Renamed from scm_reverse_string_concatenate_shared. (scm_string_concatenate_reverse): Renamed from scm_reverse_string_concatenate. 2001-04-25 Martin Grabmueller * configure.in, autogen.sh: Removed. * srfi-13.c (scm_string_replace): Take sizeof (char) into account when using memmove(). * srfi-14.h: Added prototypes for all exported procedures.. * srfi-13.c: Include srfi-13.h * srfi-13.h: New file containing the prototypes. * Makefile.am: Removed guile-srfi.texi and info_TEXINFOS variable. (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-14.h, so it gets distributed. (libguile_srfi_srfi_13_14_la_SOURCES): Added srfi-13.h. 2001-04-24 Neil Jerram * Makefile.am: Fixed "srf-14.x" typo. 2001-04-24 Martin Grabmueller * guile-srfi.texi: Removed, because merged with the GRM. * guile-srfi.texi: The docs are now up to date with the implementation and have new introductory material. 2001-04-23 Martin Grabmueller Integrated the guile-srfi package into the Guile distribution. * srfi-13.c: All procedures so specified in the SRFI now accept character set arguments. * Makefile.am: Snarfed some variables from the guile-readline directory. * srfi-14.c, srfi-14.h: Add prefix SCM_ to exported macros. * srfi-13.scm, srfi-14.scm, srfi-13.c, srfi-14.c, srfi-14.h, configure.in, Makefile.am: Added FSF copyright and Guile license information. * srfi-13.c, srfi-14.c: Include srfi-14.h. (scm_init_srfi_13_14): Initialize the complete module, if not already done so. * srfi-14.h: New file. * srfi-13.scm, srfi-14.scm: Load new combined library. * Makefile.am: Build only one library, `libguile-srfi-srfi-13-14.la' 2001-04-04 Martin Grabmueller * guile-srfi.texi: Integrated the SRFI-14 documentation. * srfi-14.c, srfi-14.scm: Made the procedures and variables compliant to the final SRFI document. * Renamed the package to guile-srfi. 2001-04-03 Martin Grabmueller * NEWS: New section for 0.0.3. * configure.in, README, guile-srfi-13.texi: Bumped version number to 0.0.3. * Released version 0.0.2. * Makefile.am: Added rules for builing the SRFI-14 library. * srfi-14.c, srfi-14.scm: New files, implementing SRFI-14 (character set library). 2001-03-27 Martin Grabmueller * README: Updated procedure and incompatibility list. * srfi-13.c (string_upcase_x, scm_string_upcase_xS), (scm_string_upcase, string_downcase_x, scm_string_downcase_xS), (scm_string_downcaseS, string_titlecase_x), (scm_string_titlecase_x, scm_string_titlecase), (scm_string_fill_xS, scm_string_copyS, scm_string_to_listS): New procedures. * srfi-13.scm: Export new case mapping procedures. * guile-srfi-13.texi (What cannot be done): Removed case mapping procedures from incompatibility list. (Case Mapping): New section for case mapping procedures. 2001-03-26 Martin Grabmueller * NEWS: New section for 0.0.2 * configure.in, README, guile-srfi-13.texi: Bumbed version number to 0.0.2 * Released version 0.0.1. * README: Made procedure list up-to-date. * guile-srfi-13.texi: Fixed typos, completed reference and added introductory blurb. * srfi-13.c, srfi-13.scm: Filled in the last missing pieces. 2001-03-22 Martin Grabmueller * Started guile-srfi-13 package. Files are copied from the guile-gdbm and slightly modified.