Subversion Repositories programming

Rev

Rev 428 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 428 Rev 438
Line 27... Line 27...
27
;;; Problem 2
27
;;; Problem 2
28
(defun PALINDROMEP (LI)
28
(defun PALINDROMEP (LI)
29
  ; define a local function so we can do this tail-recursively
29
  ; define a local function so we can do this tail-recursively
30
  (labels ((PAL-HELP (L1 L2)
30
  (labels ((PAL-HELP (L1 L2)
31
              (cond
31
              (cond
32
                ((null L1) t)
32
                ((null L1)                 t)
33
                ((equal (car L1) (car L2)) (PAL-HELP (cdr L1) (cdr L2)))
33
                ((equal (car L1) (car L2)) (PAL-HELP (cdr L1) (cdr L2)))
34
                (t                        nil)
34
                (t                         nil)
35
              )
35
              )
36
            ))
36
            ))
37
    ; call the tail-recursive local function
37
    ; call the tail-recursive local function
38
    (PAL-HELP LI (reverse LI))
38
    (PAL-HELP LI (reverse LI))
39
  )
39
  )