1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 20:30:28 +02:00
Commit graph

54 commits

Author SHA1 Message Date
Kevin Ryde
bb560b9c16 (split-at, split-at!): Rewrite in C. 2005-03-15 21:58:46 +00:00
Kevin Ryde
2b077051db (drop-right, partition!, remove!, take-right): Rewrite in C.
remove! derived from core filter!.
2005-03-15 21:15:24 +00:00
Kevin Ryde
5df2ac97e9 (find, find-tail): Rewrite in C. 2005-03-13 22:49:28 +00:00
Kevin Ryde
6e09703fa0 (lset-union): Call `=' procedure with args in the order specified by the SRFI. 2005-03-13 00:40:55 +00:00
Kevin Ryde
6282d93dba (lset-adjoin): Revert change using list' not acc', the
spec is not quite clear, but reference code uses acc, so do that.
2005-02-17 20:35:11 +00:00
Kevin Ryde
b064377679 (reduce, reduce-right): Don't call f with ridentity, use
it only if lst is empty, per srfi and intended optimization reduce
represents over fold.
2005-02-11 21:37:08 +00:00
Kevin Ryde
1bc8745f9b (list=): Correction to arguments passed to given elt=,
spec is (elt= e[i] e[i+1]) for lists i and i+1, previously the first
arg was always from list 0 not list i.
2005-02-03 23:18:59 +00:00
Kevin Ryde
a8109cc0ae (remove): Rewrite in C, a trivial adaption from scm_filter in the core.
(remove!): Use filter!.
2005-01-28 21:51:15 +00:00
Kevin Ryde
a33931ae8d (lset-adjoin): Actually use the given `=' procedure.
Test membership only on the given `list', not `acc', as per the spec.
2005-01-28 21:30:47 +00:00
Kevin Ryde
600af2edd5 (lset=): Correction to pred call arg order, srfi spec is
(= e[i] e[i+1]), but had some calls the other way around.
2005-01-27 23:11:36 +00:00
Kevin Ryde
8e15d7f577 Add a copyright year. 2005-01-23 20:47:36 +00:00
Kevin Ryde
9d494a7371 (lset=): Allow no list arguments, per srfi spec example. 2005-01-23 20:47:12 +00:00
Kevin Ryde
191be0a639 Remove (ice-9 session) and (ice-9 receive), not used. 2005-01-17 22:26:07 +00:00
Kevin Ryde
ba94ef0c7f (break): Change to a tail-recursive form. 2004-12-06 00:39:27 +00:00
Kevin Ryde
379b03074e (span): Change to a tail-recursive form. 2004-12-06 00:34:53 +00:00
Kevin Ryde
49ae1e250f (alist-delete): Change to a tail-recursive form. 2004-12-06 00:09:14 +00:00
Kevin Ryde
41ab236c76 (alist-delete): Correction to equality proc call argument
order, spec is for given KEY param first.
2004-12-05 23:53:20 +00:00
Kevin Ryde
aa0745cc05 (alist-copy): Change to a tail-recursive form. 2004-12-05 21:44:18 +00:00
Kevin Ryde
8b981efda4 (append-map, append-map!): Rewrite as simple "concatenate map" forms,
for tail recursiveness.
2004-12-04 23:16:52 +00:00
Kevin Ryde
558d5c0346 (append-map, append-map!): Rewrite as simple "apply append" forms, for
tail recursiveness.
2004-12-04 23:05:04 +00:00
Kevin Ryde
0d09b3ff64 (filter-map): Change to a tail-recursive form. 2004-12-04 22:35:30 +00:00
Marius Vollmer
bd453596ca * Makefile.am: Added appropriate @LIBGUILE_*_MAJOR@ substitutions
to the library names.
* srfi-1.scm, srfi-4.scm: Use the new library names with
load-extension.
2004-08-26 15:13:05 +00:00
Kevin Ryde
2d411b0506 (circular-list): Rewrite using set-cdr!, no need to copy parameter list. 2004-03-22 23:27:46 +00:00
Kevin Ryde
c6424115fe (map!): Define as an alias for map, previous definition was not tail-recursive. 2003-12-02 21:13:42 +00:00
Kevin Ryde
110348aee9 (count): Rewrite in C, avoiding non-tail recursion. 2003-12-02 21:12:20 +00:00
Kevin Ryde
d61261f07d (list-copy): New function, derived
from core list-copy but allowing improper lists, per SRFI-1 spec.
2003-08-22 22:36:18 +00:00
Kevin Ryde
de51f5955d (length+): Rewrite using scm_ilength. 2003-07-28 23:54:39 +00:00
Kevin Ryde
47f2726f4c (concatenate, concatenate!): Use scm_append and scm_append_x. 2003-07-28 23:43:51 +00:00
Kevin Ryde
65978fb2bd 2003-07-14 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
* srfi-1.c, srfi-1.h (scm_srfi1_partition), srfi-1.scm (partition):
	Re-implement in C to avoid stack overflows for long input lists.
2003-07-13 23:05:31 +00:00
Kevin Ryde
9388c70ac0 (delete, delete!, delete-duplicates, delete-duplicates!): Remove. 2003-07-08 00:10:42 +00:00
Kevin Ryde
56adbd75d4 (delete): Fix predicate arg order to match srfi-1 spec. 2003-05-12 23:02:01 +00:00
Kevin Ryde
4dd6bd8431 (take): Make this an alias for list-head.
(drop): Make this an alias for list-tail.
2003-05-09 22:38:54 +00:00
Marius Vollmer
2a3264974b Removed stray "o" from exports list. 2003-04-22 22:41:19 +00:00
Marius Vollmer
73be1d9e8e Changed license terms to the plain LGPL thru-out. 2003-04-05 19:15:35 +00:00
Mikael Djurfeldt
b8b0abf067 * srfi-1.scm: Re-export all srfi-1 bindings implemented by the
core.  (Thanks to Kevin Ryde.)
2003-03-24 09:13:35 +00:00
Mikael Djurfeldt
c614a00b8c * srfi-1.scm (filter, filter!): Removed. (Now implemented in the core.)
* goops/util.scm (filter): Removed.  (Now supplied by core.)

* list.c, list.h (scm_filter, scm_filter_x): New functions.

* debugger/command-loop.scm: Prefix all commands imported from
(ice-9 debugger command-loop) with debugger:.

* boot-9.scm (resolve-interface): Process #:hide; Name custom interfaces
appropriately.
(module-use!, module-use-interfaces!): Remove existing interfaces
on the use-list based on module name rather than interface
identity so that custom interfaces truly replaces their previous
version.
2003-03-11 19:58:14 +00:00
Mikael Djurfeldt
f595ccfefc * srfi-1.scm (iota map for-each map-in-order list-index member
delete delete! assoc): Marked as replacements.

* goops.scm (define-extended-generics): New syntax.
(<class> <operator-class> <entity-class> <entity>): Marked as
replacements.

* boot-9.scm (module-override!, make-mutable-parameter,
lookup-duplicates-handlers, default-module-duplicates-handler):
New functions.
(process-duplicates): Don't call duplicates handlers for duplicate
bindings of the same variable.
(process-define-module): Process #:replace.
(compile-interface-spec, resolve-interface): Process #:prefix.

* format.scm (format): Marked as replacement.

* threads.scm (future, future-ref): Marked as replacements.
2003-03-10 23:18:05 +00:00
Mikael Djurfeldt
7692d26b31 * srfi-1.scm: Load srfi-1 extension.
(map, map-in-order, for-each, member, assoc): Replaced by
primitives in srfi-1.c.
(map1): Defined as `map'.
2002-12-01 13:56:11 +00:00
Mikael Djurfeldt
ee6aac9733 * srfi-1.scm: Load srfi-1 extension.
(map, map-in-order, for-each, member): Replaced by primitives in
srfi-1.c.

* Makefile.am: Added rules for srfi-1.c.

* srfi-1.c, srfi-1.h: New files.
2002-12-01 13:10:51 +00:00
Thien-Thi Nguyen
6be07c5278 Update copyright.
Point to manual in commentary; nfc.
2002-03-28 01:39:12 +00:00
Thien-Thi Nguyen
e4cb30dff3 (count1, take-while): Rewrite to be tail-recursive.
Thanks to Panagiotis Vossos.
2002-01-21 21:31:34 +00:00
Thien-Thi Nguyen
513a3bd72d (map1): Rewrite to be tail-recursive.
Thanks to Panagiotis Vossos for the bug report.
2002-01-21 01:11:35 +00:00
Gary Houston
6ddd941279 2001-09-12 Gary Houston <ghouston@arglist.com>
* srfi-1.scm (filter): change "caller" to "filter" in check-arg-type.
2001-09-12 19:15:33 +00:00
Dirk Herrmann
8c494e9973 * Removed lots of deprecated stuff. 2001-08-31 14:42:31 +00:00
Gary Houston
5753f02f67 * 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-05 10:12:37 +00:00
Gary Houston
848458d990 * srfi-1.scm (filter): replaced with a tail-recursive version.
(remove): implement using filter, to make it tail-recursive.
2001-08-04 18:37:08 +00:00
Gary Houston
99f59e93b5 * 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 21:10:47 +00:00
Gary Houston
6d52dbf2ef (map-in-order): defined and exported, to support lists of unequal
length.
2001-07-03 20:18:39 +00:00
Gary Houston
fc183bc85b * 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.
2001-07-03 18:54:43 +00:00
Martin Grabmüller
e800aa0482 * 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-03 16:19:23 +00:00