- Array Declarations
(setf array-1 (make-array '(10))) ;; 1-D array of 10 items
(setf array-2 (make-array '(5 6))) ;; 2-D array
(setf array-3 (make-array '(3) :initial-element 0))
(setf array-4 (make-array '(3) :initial-contents '(1 2 3)))
- Array Access
(setf (aref array-1 0) 'whatever) ;; slot 1 (0 based)
(setf (aref array-1 9) 'whatever) ;; slot 10 (0 based)
(setf (aref array-1 10) 'error) ;; produces an error!
(setf (aref array-2 2 3) 'whatever) ;; row 3, column 4 (0 based)
- Array Size Determination
(array-dimensions array-1) ;; returns '(10)
(array-dimension array-1 0) ;; returns 10
(array-dimensions array-2) ;; returns '(5 6)
(array-dimension array-2 0) ;; returns 5
(array-dimension array-2 1) ;; returns 6
- Random Numbers
(random 10) ;; returns a random integer from 0 thru 9
(random 10.0) ;; returns a random real from 0.0 thru 10.0
- Formatted Output
(format t "hi ho") ;; prints hi ho
(format t "hi~%ho") ;; prints hi on one line, ho on the next
(format t "~a + ~a" 1 2) ;; prints 1 + 2