Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

The Little Schemer

Name: Anonymous 2009-07-19 23:23

Hi, I am working through the little schemer. I do not have the math skills to work through SICP.

I have the following code:


(define (member? a lat)
  (lambda (a lat)
    (cond
      ((null? lat) #f)
      (else (or (eq? (car lat) a)
                (member? a (cdr lat)))))))



When I run this say like:
(member? 3 (cons 3 '(9 8 7 6 13 3)))

I get the following:
#<procedure:...my-scheme-log.ss:137:2>
rather than a list without the first instance of 3

Can you help me?

Name: Scheme Noobie 2009-07-23 2:57

>>57
Actually, I think I see it.

(add1) is applied during the recursion in the comparison at (eqan? (car lat) n) (etc...)

Then we have:

(occur 1 '(1 1 1 b 3))
Evaluates to: (add1 (add1 (add1 0)
And finally evaluates to: 3

Fucking (scheme), do you want a lambda? Do you want a recursion? pig disgusting.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List