CLOS: Jak zrobić gniazdo z wymuszonym rodzajem wektora symboli?
Próbuję utworzyć klasę, która może przechowywać wektor symboli w gnieździe w SBCL. Nie wiem, jak to skonfigurować.
Jak dotąd najlepiej się domyślałem
(defclass Individual ()
((discrete-decisions :type (vector symbol))))
Zwraca następujący błąd:
keyword argument not a symbol:
(DISCRETE-DECISIONS :TYPE (VECTOR SYMBOL)).
[Condition of type SB-INT:SIMPLE-PROGRAM-ERROR]
Niektóre eksperymenty wykazały, że zmiana typu na justsymbol
zwraca ten sam błąd. Myślałem, żesymbol
był prawidłowym typem w Common Lisp ... czy się mylę?
Jak mogę to uruchomić?
[EDYTOWAĆ]
Powyższy problem miałem z uruchomieniem SBCL 1.0.58 w kompilacji Slime 09-22-2012 pod Emacsem 24.2. Kiedy uruchamiam SBCL 1.0.58 z wiersza poleceń, nie ma problemu. To nie wydaje się być problemem SBCL ...