[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

function-type-rest-list-element (really array types)



re:  My idea is that TYPEP automatically "upgrade" its type
    argument to the corresponding "implementation type", i.e. a type
    actually supported by the implementation.  . . . 

There are two problems with respect to typep.  Consider arrays made by

	(MAKE-ARRAY <n> :element-type '<foo>)

then:

  1.  (TYPEP <array> '(ARRAY <foo>))   frequently fails for such arrays
      

  2.  (TYPEP (AREF <array> <n>) '<foo>) frequently fails for such arrays 

These are two separate problems, and as I read your comments about having
TYPEP do the "upgrading", I think they apply only to case (1), right?
This may be another way of trying to say that
	`(ARRAY FOO)
is type equivalent to
	`(ARRAY ,(upgrade array-element-type 'foo))


re: I think that analogies with the FIXNUM/INTEGER are flawed: FIXNUM has
    is a precisely defined concept within the language:
        `(integer ,most-negative-fixnum ,most-positive-fixnum)

See my comments in the previous note about a "pyrrhic success".


-- JonL --