FWIW, I'm still looking for responses to my original questions and am not as personally interested in the side topic that has hijacked it for now.
-Brad On Mon, 27 Jan 2014, Tom Hildebrandt wrote: > Hi Lydia: > > By definition, a set can only contain one copy of each distinguishable > element, so that answers the question about repeated elements: a > semantic error would occur when an attempt was made to insert a > duplicate element, e.g. due to overlapping ranges. > > Whether the set is ordered or not is an implementation choice. > Iteration over an unordered set will produce elements in random order. > One would expect this behavior from an associative domain. Iteration > over an ordered set will produce the elements in some sorted order. > Rectangular domains are sorted, so in general it appears that we need to > support both. > > Whether iteration produces the indices in random order, the order in > which they were inserted, or in sorted order may or may not be > problematical, depending on the algorithm. For example, if the elements > can be processed by a coforall, that means order doesn't matter. > Naturally, one can (theoretically) sort the indices in an unordered > domain before iterating over them. > > THH > ________________________________________ > From: Lydia Duncan [[email protected]] > Sent: Monday, January 27, 2014 9:19 AM > To: [email protected] > Subject: Re: [Chapel-developers] Request for review (concept and code): > Domain expression cleanup > > Hi Tom, others: > >> Therefore, not requiring the brackets would introduce a parsing ambiguity. >> Does >> var A : [1, 3..5, 7, 10..12] real ; >> mean a four-dimensional array containing 9 elements? or a one-dimensional >> array containing 8 elements? >> I would choose the former and require the curly braces to force the latter >> interpretation: >> var A : [{1, 3..5, 7, 10..12}] real; >> (Now definitely a one-dimensional array.) > It seems like the latter interpretation would be problematic in the case > where the sets do not go in order, or where numbers are repeated. For > instance, > var A : [1, 7, 3..5, 10..12] real; > or > var A: [1, 3..9, 7, 10..12] real; > > Since the ranges are used as indices, how should this situation be > handled? Should it sort the different values it obtains or alias the > index of the second slot to be 7? Should it ignore any duplicates > values? Should it throw an error when this situation arises? > > Sorry if these are questions already addressed by sparse arrays. > > -Lydia > > ------------------------------------------------------------------------------ > CenturyLink Cloud: The Leader in Enterprise Cloud Services. > Learn Why More Businesses Are Choosing CenturyLink Cloud For > Critical Workloads, Development Environments & Everything In Between. > Get a Quote or Start a Free Trial Today. > http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk > _______________________________________________ > Chapel-developers mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/chapel-developers > > ------------------------------------------------------------------------------ > CenturyLink Cloud: The Leader in Enterprise Cloud Services. > Learn Why More Businesses Are Choosing CenturyLink Cloud For > Critical Workloads, Development Environments & Everything In Between. > Get a Quote or Start a Free Trial Today. > http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk > _______________________________________________ > Chapel-developers mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/chapel-developers > ------------------------------------------------------------------------------ CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk _______________________________________________ Chapel-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/chapel-developers
