このコードは本からのものです:「LandOfLisp」最初のバージョンは本からのものです。読んでみると、2行目の「at-loc-p」の直前に「(」、3行目のlocの直後に「)」という括弧があると思いました。
(defun person-at (loc pers per-locs)
(labels ((at-loc-p (pers)
(eq (cadr (assoc pers per-locs)) loc)))
(remove-if-not #'at-loc-p pers)))
しかし、これをテストすると、
(defun person-at (loc pers per-locs)
(labels (at-loc-p (pers)
(eq (cadr (assoc pers per-locs)) loc))
(remove-if-not #'at-loc-p pers)))
出てきた:
AT-LOC-Pの必須引数がラムダリスト(CCL :: FUNCNAME CCL :: LAMBDA-LIST&BODY CCL :: LABELS-FUNCTION-BODY)と一致しません。
[タイプCCL::SIMPLE-PROGRAM-ERRORの条件]
私は静かに理解していません。助けが必要。ありがとうございました。