Which makes it sound like there is in fact no way to do this in standard CL, to say nothing of other lisps.
Untested perl code to do this (taking a cons to be a [car, cdr] array reference):
AUTOLOAD {
unless ($AUTOLOAD =~ m/::c([ad]{1,})r$/) {
die "Attempted to call undefined function $AUTOLOAD";
}
my $ads = $1;
my $cons = shift;
while (my $c = chop $ads) {
$cons = $cons->[$c eq 'a' ? 0 : 1];
}
return $cons;
}
Example of a situation this feature might be useful: "I have this object with lots of properties which I don't necessarily know what they are. How do I define getter/setter methods on them?"