H. S. Teoh:

Operations like intersections, subarrays, etc., should be done
via wrapper types

A Region is not an array of data, it's more like a [(x1,x2),(y1,y2)]. You can allocate an array given a Region, you can iterate a Region, etc.


A.distribution ::= distribution of array A

What's a "distribution"?

It's a concept of higher level compared to Regions. It's less efficient than Regions, but it's more flexible. It allows to decouple the Point from the location of the data memory. So you can have a distribution that maps Points to various different concrete arrays.

http://x10.sourceforge.net/x10doc/2.2.1/x10/array/DistArray.html
http://x10.sourceforge.net/x10doc/2.2.1/x10/array/Dist.html

I have not fully understood what a Distribution is.

Bye,
bearophile

Reply via email to