CL-USER 1 > (destructuring-bind (x . y) nil (list x y))

  Error: NIL does not match (X . Y).

Most CL implementation barf here while CMUCL (18e) returns (NIL
NIL). Is this a bug?

After all, we have

  CL-USER 4 > (car nil)
  NIL

  CL-USER 5 > (cdr nil)
  NIL

so I could imagine a rationale for CMUCL's behaviour, but

  CL-USER 6 > (cons nil nil)
  (NIL)

and (NIL) and NIL are certainly not the same. I guess there's
something somewhere in the spec(k) that defines the correct outcome.

Thanks,
Edi.


Reply via email to