2

有什么明智的方法可以改变这个:

(for ([cos-t (stream-map cos t-range)]
      [sin-t (stream-map sin t-range)])
  ...)

像这样:

(for ([(cos-t sin-t) (... t-range)]
  ...)

它不是真正的地图功能,因为您不能那样制作列表。我只是在寻找更好、更简单的方法来做上述事情。

4

1 回答 1

4

您想要的东西已经可以使用for表格获得。使用in-parallel函数以这种方式组合两个序列:

(for ([(cos-t sin-t) (in-parallel (stream-map cos t-range)
                                  (stream-map sin t-range))])
  (displayln (+ cos-t sin-t)))
于 2012-03-23T14:48:21.977 回答