阵列升级

时间:2008-12-31 02:50:52

标签: lisp common-lisp

如果我正确理解了Common Lisp标准的Section 15.1.2.1,那么(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,表达式是正确的。)

1 个答案:

答案 0 :(得分:1)

ECL可能不支持'(unsigned-byte 16)