Added (make-list)

This commit is contained in:
Justin Ethier 2015-03-24 15:55:05 -04:00
parent d418ce265f
commit 8b972b7421

View file

@ -89,8 +89,16 @@
(car lst) (car lst)
(foldl (lambda (a b) (append-2 b a)) (car lst) (cdr lst))))) (foldl (lambda (a b) (append-2 b a)) (car lst) (cdr lst)))))
(define (list . objs) objs) (define (list . objs) objs)
; TODO: (define (make-list k . fill) (define (make-list k . fill)
; ) (letrec ((x (if (null? fill)
#f
(car fill)))
(make
(lambda (n obj)
(if (zero? n)
'()
(cons obj (make (- n 1) obj) )))))
(make k x)))
(define (map func lst) (define (map func lst)
(foldr (lambda (x y) (cons (func x) y)) '() lst)) (foldr (lambda (x y) (cons (func x) y)) '() lst))
(define (for-each f lst) (define (for-each f lst)