Альтернативное определение pairs
Хьюго Дум считает, что построение потока пар из трех частей — процедура слишком сложная. Он предлагает вместо того, чтобы отделять пару
(S₀, T₀)
, работать с первой строкой целиком:
(define (pairs s t)
(interleave
(stream-map (lambda (x) (list (stream-car s) x))
t)
(pairs (stream-cdr s) (stream-cdr t))))
Будет ли такой код работать? Посмотрите, что произойдет, если мы попытаемся вычислить
(pairs integers integers)
, используя определение Хьюго.
Комментарии отсутствуют.