One think I really appreciate about SBCL is its checking of type
However, SBCL 18.104.22.168 does not seem to fully check type specifiers
in make-array. For example, here is a session:
* (make-array 3 :element-type '(unsigned-byte 1))
* (make-array 3 :element-type 'foo)
#(0 0 0)
* (array-element-type (make-array 3 :element-type 'foo))
* (upgraded-array-element-type 'foo)
debugger invoked on a SIMPLE-ERROR: undefined type: FOO
Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [ABORT] Exit debugger, returning to top level.
I would have expected the second form to be rejected.
(Clisp rejects it)