Discussion:
[Lisp] "huvud" och "svans" kan d.å.h.
Sunnan
2006-04-12 17:41:44 UTC
Permalink
car är det ena av de två i ett conspar.
cdr är det andra. den ena är inte nödvändigtvis "före" den andra.

jag har gjort lite hilarious exempel som alla kan glädjas åt
(tyvärr scheme hoppas ni kan översätta i huvet):

(define (backlist . args)
(if (null? args)
args
(cons (apply backlist (cdr args)) (car args))))

(define *example* (backlist 'a 'b 'c 'd))

(cdr *example*)
; => a

(cdar *example*)
; => b

(define (backmap proc l)
(if (null? l)
l
(cons (backmap proc (car l)) (proc (cdr l)))))

(cdr (backmap (lambda (x) (+ x 1)) (backlist 1 2 3 4)))
;=> 2

lycka till!
Sunnan
(i och med att cdr eg. ska ha datan och car eg. ska ha en adress så
borde detta ju vara som det borde vara! fast jag skojar bara.)

Loading...