@end example
@end deffn
-@deffn {Scheme Procedure} enclose-array array dim1 @dots{}
-@deffnx {C Function} scm_enclose_array (array, dimlist)
-@var{dim1}, @var{dim2} @dots{} should be nonnegative integers less than
-the rank of @var{array}. @code{enclose-array} returns an array
-resembling an array of shared arrays. The dimensions of each shared
-array are the same as the @var{dim}th dimensions of the original array,
-the dimensions of the outer array are the same as those of the original
-array that did not match a @var{dim}.
-
-An enclosed array is not a general Scheme array. Its elements may not
-be set using @code{array-set!}. Two references to the same element of
-an enclosed array will be @code{equal?} but will not in general be
-@code{eq?}. The value returned by @code{array-prototype} when given an
-enclosed array is unspecified.
-
-For example,
-
-@lisp
-(enclose-array '#3(((a b c)
- (d e f))
- ((1 2 3)
- (4 5 6)))
- 1)
-@result{}
-#<enclosed-array (#1(a d) #1(b e) #1(c f))
- (#1(1 4) #1(2 5) #1(3 6))>
-
-(enclose-array '#3(((a b c)
- (d e f))
- ((1 2 3)
- (4 5 6)))
- 1 0)
-@result{}
-#<enclosed-array #2((a 1) (d 4))
- #2((b 2) (e 5))
- #2((c 3) (f 6))>
-@end lisp
-@end deffn
-
@deffn {Scheme Procedure} array-shape array
@deffnx {Scheme Procedure} array-dimensions array
@deffnx {C Function} scm_array_dimensions (array)