Fix type-relations between EXTENDED-SEQUENCE and [FUNCALLABLE-]INSTANCE
commita9dc8e55f15d021af300375cd4d2296a1ea1470b
authorJan Moringen <jmoringe@techfak.uni-bielefeld.de>
Mon, 14 Mar 2016 14:54:24 +0000 (14 15:54 +0100)
committerJan Moringen <jmoringe@techfak.uni-bielefeld.de>
Mon, 14 Mar 2016 22:36:05 +0000 (14 23:36 +0100)
treeb9b2cb45813d84fd5f5a44f0810cc424247a437c
parentafccb156b7100fd6320bec643e4162911fe8a7e8
Fix type-relations between EXTENDED-SEQUENCE and [FUNCALLABLE-]INSTANCE

SUBTYPEP behavior (unchanged):

  (subtypep 'extended-sequence 'instance)             => nil, t
  (subtypep 'instance 'extended-sequence)             => nil, t

  (subtypep 'extended-sequence 'funcallable-instance) => nil, t
  (subtypep 'funcallable-instance 'extended-sequence) => nil, t

New TYPE-INTERSECTION behavior:

     (type-intersection extended-sequence instance)
  == (type-intersection instance extended-sequence)
  => (and extended-sequence instance) instead of empty type

     (type-intersection extended-sequence funcallable-instance)
  == (type-intersection funcallable-instance extended-sequence)
  => (and extended-sequence funcallable-instance) instead of empty type
NEWS
src/code/late-type.lisp
tests/extended-sequences.impure.lisp