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

A type specifier question for the CL language theorists.

    Date: Mon, 14 May 90 15:13:04 EDT
    From: cogen@XN.LL.MIT.EDU (David Cogen)

    I thought that (LIST INTEGER) was permissible.

I can't find it in CLtL2.  Symbolics has some presentation types that
are like this (e.g. (SEQUENCE INTEGER)), but there's no such CL type.
The CL type LIST is simply an abbreviation for (OR CONS NULL) -- it
permits dotted lists as well.

    But, there is another way to do this, although I suspect that most compilers
    would ignore it. It uses SATISFIES.

SATISFIES is generally only useful if the type specifier will be used
with TYPEP or CHECK-TYPE.  It's not much use for purposes of
optimization, since it would take an extremely smart compiler to
translate a predicate into a type assertion that it can deal with.