[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

update of SRFI-42 "Eager Comprehensions"

Dear SRFI-42 discussion list,

There will soon be an update of SRFI-42 "Eager Comprehensions"
available on schemers.org.

The changes I made are minimal:

1. Two ECs got renamed to align with SRFI-1:

        forall?-ec         ->         every?-ec
        exists?-ec         ->         any?-ec

This was suggested by Sven Hartrumpf. I think he is right.

2. There is one additional comprehension:

        (vector-of-length-ec <k> <qualifiers>* <_expression_>)

behaves like vector-ec, but the length of the resulting vector is
known in advance and is specified as the argument <k>.

The new comprehension allows a more efficient implementation
reducing the pressure on the garbage collector. Some quick timing
in Scheme-48 on a Pentium 4 Linux system indicates a speedup by
a factor of about 1.5.This is not overwhelming but worth the effort.
(Bear in mind that the speedup will vary greatly.)

 The new comprehension was triggered by the discussion around
SRFI-43 "Vector Library" (Taylor Campbell). Several people have
expressed their concern there that making vectors on an element-
by-element basis is inefficient.



Dr. Sebastian Egner
Senior Scientist
Philips Research Laboratories
Prof. Holstlaan 4 (postbox WY63, kamer WY 6-55)
5656 AA Eindhoven
The Netherlands
tel:       +31 40 27-42069  *** new telephone number
fax:      +31 40 27-42566  *** new fax number
email: sebastian.egner@xxxxxxxxxxx