6.7  Example: Building Lists, with lambda


I want lists like (list 0 1 2 ...)

(build-list n (lambda (i) i))


How about (list 3 4 5 ...)?

(build-list n (lambda (i) (+ 3 i)))


And (list 1 4 9 ...)?

(build-list n (lambda (i) (* i i)))


Can I do more than numbers?

( color-list image 
  (build-list
    50 (lambda (i)
	 (make-color (* i 10)
	             (* i 5)
		     (* i 3))))
  50 1)
  


And nested lists?

(build-list
  10 (lambda (i)
       (build-list
	 10 (lambda (j)
	      (if (= i j) 1 0)))))