配列に関してのメモ

使用例

gosh> (use gauche.array)
#<undef>
gosh> (define A #,(<array> (0 3 0 3) 8 3 4 1 5 9 6 7 2))
A
gosh> A
#,(<array> (0 3 0 3) 8 3 4 1 5 9 6 7 2)

;   [0] [1] [2]
;[0] 8   3   4 
;[1] 1   5   9
;[2] 6   7   2

gosh> (array? A)
#t
gosh> (array-size A)
9
gosh> (array-set! A 0 0 0)
#<undef>
gosh> A
#,(<array> (0 3 0 3) 0 3 4 1 5 9 6 7 2)
;↓配列は 0 3 0 3 の場合 0〜2 0〜2 までが実質使える。
gosh> (array-set! A 2 2 0)
#<undef>
gosh> A
#,(<array> (0 3 0 3) 8 3 4 1 5 9 6 7 0)
gosh> (array-ref A 2 0)
6

;0で初期化したい場合
gosh> (make-array (shape 0 2 0 3) 0)
#,(<array> (0 2 0 3) 0 0 0 0 0 0)

詳しくは↓
gauche.array - 配列