On Sun, Jun 24, 2007 at 07:27:42PM -0400, William D Clinger wrote:
> truth truth2 peak space
>
> vector-map (consing) 38.8 43.2 12000
> rec-vector-map (recursive) 40.6 46.0 36000
> rec4-vector-map (unrolled 4 times) 28.4 29.3 18000 (*)
> rec8-vector-map (unrolled 8 times) 24.5 28.8 11000
> buggy-vector-map 25.5 30.1 4000
Perhaps I'm missing something, but wouldn't
(define (vector-map . args)
(vector-copy (apply buggy-vector-map args)))
satisfy the requirements of R5.95RS? It seems unrepresented in the
above, if I've correctly inferred the terms under test.
--
(let ((C call-with-current-continuation)) (apply (lambda (x y) (x y)) (map
((lambda (r) ((C C) (lambda (s) (r (lambda l (apply (s s) l)))))) (lambda
(f) (lambda (l) (if (null? l) C (lambda (k) (display (car l)) ((f (cdr l))
(C k))))))) '((#\J #\d #\D #\v #\s) (#\e #\space #\a #\i #\newline)))))
Received on Tue Jun 26 2007 - 20:58:40 UTC