Advertisement
nnmap

Untitled

Jan 31st, 2015
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scheme 0.67 KB | None | 0 0
  1. (define (integers-starting-from n)
  2.   (cons-stream n (integers-starting-from (+ n 1))))
  3.  
  4. (define (stream-filter pred stream)
  5.   (cond ((stream-null? stream) the-empty-stream)
  6.         ((pred (stream-car stream))
  7.          (cons-stream (stream-car stream)
  8.                       (stream-filter pred
  9.                                      (stream-cdr stream))))
  10.         (else (stream-filter pred (stream-cdr stream)))))
  11.  
  12. (define (sieve stream)
  13.   (cons-stream
  14.    (stream-car stream)
  15.    (sieve (stream-filter
  16.            (lambda (x)
  17.              (not (divisible? x (stream-car stream))))
  18.            (stream-cdr stream)))))
  19.  
  20. (define primes (sieve (integers-starting-from 2)))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement