In a normal subscripting operation, any subscript in a distributed dimension of an array must be a location in the range associated with that dimension of the array . To ensure this, we insist that the location used as a subscript must be a named subscript scoped by an at or overall construct. The second assignment is still illegal, because the subscript is not a named location. The body of the construct is only executed by processors that hold the specified location. The final assignment is illegal again, because j is not a location in the range, x , of d .
Locations have a peculiar status in the language.
They can only be named through overall or at constructs. This implies that location values cannot be stored in ordinary Java variables or passed as arguments to user-defined methods. It is sometimes convenient to regard locations as having class Location , but really they live somewhere outside the normal type system - essentially a symbolic convenience. Last updated January 2000.