diff --git a/lib/srfi/231.sld b/lib/srfi/231.sld index f791d645..fbb1101c 100644 --- a/lib/srfi/231.sld +++ b/lib/srfi/231.sld @@ -37,6 +37,7 @@ storage-class-data? storage-class-data->body ;; Arrays make-array array? array-domain array-getter array-dimension + array-empty? mutable-array? array-setter specialized-array-default-safe? specialized-array-default-mutable? make-specialized-array make-specialized-array-from-data diff --git a/lib/srfi/231/base.scm b/lib/srfi/231/base.scm index 5b09a38b..cbbaca9d 100644 --- a/lib/srfi/231/base.scm +++ b/lib/srfi/231/base.scm @@ -311,6 +311,9 @@ (define (array-dimension a) (interval-dimension (array-domain a))) +(define (array-empty? a) + (interval-empty? (array-domain a))) + (define (mutable-array? x) (and (array? x) (array-setter x) #t)) diff --git a/lib/srfi/231/base.sld b/lib/srfi/231/base.sld index fc574e1a..3745333f 100644 --- a/lib/srfi/231/base.sld +++ b/lib/srfi/231/base.sld @@ -37,7 +37,7 @@ ;; Arrays make-array array? array-domain array-getter array-dimension mutable-array? array-setter specialized-array-default-safe? - specialized-array-default-mutable? + specialized-array-default-mutable? array-empty? make-specialized-array make-specialized-array-from-data specialized-array? array-storage-class array-indexer array-body array-safe? array-coeffs array-adjacent? array-packed?