PasteRack.org
Paste # 93613
2015-04-21 21:58:10

Fork as a new paste.

Paste viewed 180 times.


Embed:

  1. #lang racket
  2.  
  3. (define ((my-iterate f init) xs)
  4.   (define (iterate xs val)
  5.     (if (null? xs)
  6.         val
  7.         (iterate (cdr xs) (f xs val))))
  8.   (iterate xs init))
  9.  
  10. (define my-length
  11.   (my-iterate (lambda (xs len)
  12.                 (+ 1 len))
  13.               0))
  14.  
  15. (define my-reverse
  16.   (my-iterate (lambda (xs rs)
  17.                 (cons (car xs) rs))
  18.               '()))

=>