内容 3.5 Streams · 261
练习 自检推理
Exercise 3.50: Complete the following
definition, which generalizes stream-map to allow procedures that take
multiple arguments, analogous to map in 2.2.1,
Footnote 78.
(define (stream-map proc . argstreams)
(if (⟨??⟩ (car argstreams))
the-empty-stream
(⟨??⟩
(apply proc (map ⟨??⟩ argstreams))
(apply stream-map
(cons proc
(map ⟨??⟩
argstreams))))))
练习 3.50:补全以下定义。该定义将 stream-map 推广为可接受多个参数的过程,类似于 2.2.1 节脚注 78 中的 map。
(define (stream-map proc . argstreams)
(if (⟨??⟩ (car argstreams))
the-empty-stream
(⟨??⟩
(apply proc (map ⟨??⟩ argstreams))
(apply stream-map
(cons proc
(map ⟨??⟩
argstreams))))))
SICP source code scheme
(define (stream-map proc . argstreams)
(if (⟨??⟩ (car argstreams))
the-empty-stream
(⟨??⟩
(apply proc (map ⟨??⟩ argstreams))
(apply stream-map
(cons proc
(map ⟨??⟩
argstreams)))))) 我的笔记 自动保存