summaryrefslogtreecommitdiff
path: root/coding-exercises/2/18.rkt
blob: 56f7987cd782ebf042ecfbda3f33fc77290e3eff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#lang racket
(require "../../shared/lists.rkt")

;; grow in reverse method
;; or pointer reversal method in other languages
(define (reverse l)
  (define (iter l p)
   (cond
     ((null? l) p)
     (else
      (iter
        (cdr l)
        (cons (car l) p)))))
  (iter l (list)))

(define (print)
    (println (list 1 4 9 16 25))
    (reverse (list 1 4 9 16 25)))
(print)