For those of you that don't mind a little insecurity if only your array accesses don't have bounds checks, here are some unchecked operations on arrays.
These operations work on ordinary arrays, so you can mix checked and unchecked operations on the same arrays.
In an ideal world (which we're working on, in principle) the compiler would let you use the ordinary checked operations and then optimize the checks away in a safe and efficient manner.
val sub : ('a array * int) -> 'a
val update : ('a array * int * 'a) -> unit
val create : (int * 'a) -> 'a array
sub (a, i)
update (a, i, x)
create (i, x)
Last Modified October 28, 1997
Comments to firstname.lastname@example.org
Copyright © 1998 Bell Labs, Lucent Technologies