Обновление массива

Если я правильно понимаю Раздел 15.1.2.1 стандарта Common Lisp, совершенно законно, чтобы (upgraded-array-element-type '(unsigned-byte 8)) было '(unsigned-byte 16) или даже t. Поэтому мой вопрос касается фактического поведения реализаций.

Используются ли сегодня какие-либо реализации, в которых обновлены '(unsigned-byte 8) или '(unsigned-byte 16)? Другими словами, если следующее неверно:

(and (subtypep (upgraded-array-element-type '(unsigned-byte 8)) '(unsigned-byte 8))
     (subtypep (upgraded-array-element-type '(unsigned-byte 16)) '(unsigned-byte 16))

(Выражение верно для SBCL, CLISP, Allegro CL, Clozure CL и LispWorks.)


person Vebjorn Ljosa    schedule 31.12.2008    source источник


Ответы (1)


ECL может не поддерживать '(unsigned-byte 16)

person Doug Currie    schedule 31.12.2008