/src/vector/gambit/source.scm
http://github.com/dharmatech/abstracting · Scheme · 33 lines · 16 code · 14 blank · 3 comment · 0 complexity · 728b0ae03271449348375e8dc5dbd6d0 MD5 · raw file
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (define (vector-map proc . vectors)
- (let ((n (apply min (map vector-length vectors))))
- (let ((u (make-vector n)))
- (do ((i 0 (+ i 1)))
- ((= i n))
- (vector-set! u i
- (apply proc
- (map (lambda (v)
- (vector-ref v i))
- vectors))))
- u)))
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (define (vector-for-each proc . vectors)
- (let ((n (apply min (map vector-length vectors))))
- (do ((i 0 (+ i 1)))
- ((= i n))
- (apply proc (map (lambda (v) (vector-ref v i)) vectors)))))
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;