Next: , Previous: , Up: Type Inference   [Contents][Index]

5.3.4 Operation Specific Type Inference

Many of the standard Common Lisp functions have special type inference procedures that determine the result type as a function of the argument types. For example, the result type of aref is the array element type. Here are some other examples of type inferences:

(logand x #xFF) ⇒ (unsigned-byte 8)

(+ (the (integer 0 12) x) (the (integer 0 1) y)) ⇒ (integer 0 13)

(ash (the (unsigned-byte 16) x) -8) ⇒ (unsigned-byte 8)