]> git.rkrishnan.org Git - sicp.git/blob - src/sicp/ex2_33.rkt
Solution to 4.44. A bit too verbose. Can be improved by better
[sicp.git] / src / sicp / ex2_33.rkt
1 #lang racket
2
3 (require "utils.rkt")
4
5 (define (map f coll)
6   (accumulate (lambda (x y) (cons (f x) y))
7               '()
8               coll))
9
10 (map square '(1 2 3 4 5))
11
12 (define (append seq1 seq2)
13   (accumulate cons
14               seq2
15               seq1))
16
17 (append '(1 2 3) '(4 5 6))
18
19 (define (length seq)
20   (accumulate (lambda (x y) (+ 1 y))
21               0
22               seq))
23
24 (length '(1 2 3 4 5))