Type specifiers in Common Lisp allow specifying the type of data. Standard type specifiers include symbols for types like number, string, array. Type specifiers can also be lists to further specify element types, dimensions, etc. New type specifiers can be defined using deftype. Functions like coerce and upgraded-array-element-type handle type conversions.
11. Type specifier symbols Standard type specifier symbols are: array fixnum package simple-string atom float pathname simple-vector bignum function random-state single-float Bit hash-table ratio standard-char Bit -vector integer rational stream character keyword readtable string [common ] list sequence string char Compiled-function long-float short-float symbol complex nil signed-byte t cons null simple-array unsigned-byte Double-float number simple-bit-vector vector
12.
13.
14.
15. The call (typep x ‘ (satisfies p)) assigns p to x and returns t if true and returns nil if the result is false.Ex: (deftype string-char() ' (and character (satisfies string-char-p))) STRING-CHAR
19. declaration( declaring to make array that elements will always be of type short-float permits optimization.)
20.
21. (vector element-type size) set of one dimensional arrays whose elements are of type element type and whose length is eq ti size. Ex: (vector *5) vector of length 5 ( vector double-float) floating-point numbers. (simple-vector size) specifies that the elements are of simple general vectors. (complex type1) every element of this type is a complex number whose real part and imaginary part are each of type type1)
22.
23.
24. (unsigned-byte s) set of non-negative integers that can be represented in a byte of s bits. (string size) set of strings of indicated size. (base-string size) set of base strings of indicated size (bit-vector size)set of bit-vectors of indicated size.
25.
26. the deftype special form can be used to define new type-specifier abbreviations.Syntax: deftype name lambda-list [{declaration}* | doc-string ] {form}* [macro] Name is the symbol that identifies the type specifier Form constitutes the body of expander function Ex: (deftype mod (n) ‘ (integer 0 ( ,n)))