ToC | DocOverview | CGDoc | RelNotes | Index | PermutedIndex
| Allegro CL

| ANSI Common Lisp 2 Syntax 2.4 Standard Macro Characters 2.4.8 Sharpsign ### 2.4.8.12 Sharpsign A `#nA` `#n`A`object` constructs an n-dimensional array, using object as the value of the `:initial-contents` argument to make-array. For example, `#2A((0 1 5) (foo 2 (hot dog)))` represents a 2-by-3 matrix:
     0       1       5
     foo     2       (hot dog)
In contrast, `#1A((0 1 5) (foo 2 (hot dog)))` represents a vector of length `2` whose elements are lists:
     (0 1 5) (foo 2 (hot dog))
`#0A((0 1 5) (foo 2 (hot dog)))` represents a zero-dimensional array whose sole element is a list:
     ((0 1 5) (foo 2 (hot dog)))
`#0A foo` represents a zero-dimensional array whose sole element is the symbol `foo`. The notation `#1A foo` is not valid because `foo` is not a sequence. If some dimension of the array whose representation is being parsed is found to be `0`, all dimensions to the right (i.e., the higher numbered dimensions) are also considered to be `0`. For information on how the Lisp printer prints arrays, see Section 22.1.3.4 Printing Strings, Section 22.1.3.6 Printing Bit Vectors, Section 22.1.3.7 Printing Other Vectors, or Section 22.1.3.8 Printing Other Arrays.

© Franz Inc. All Rights Reserved - File last updated 2022-07-25