[sc34wg3] TMQL: Scope and tuple sequences

Robert Barta rho at devc.at
Fri Nov 9 09:10:18 EST 2007

On Fri, Nov 09, 2007 at 02:29:16PM +0100, Lars Heuer wrote:
> To my knowledge neither TMDM nor TMRM nor the TMDM->TMRM
> implies any ordering (i.e. for scope).
> My conclusion of this mismatch is, that the following query may 
> produce an empty sequence:
>     //person == //person
> Since we have no ordering, the left hand side may, for example, produce
>     (lennon, mccartney)
> while the right hand side may produce
>     (mccartney, lennon)
> And therefor the "==" operation returns an empty sequence.

Not really.

   // person

returns a (unordered) tuple sequence, and that looks like this


So this is "vertically" organized. (It takes explicit effort to
convert a vertical sequence into a single tuple, which is
'horizontal'. This is done with one of the functions in the Appendix
(predef env), btw).

To make this clearer, another example would be

  ( // person, // person )

which may give you

   [mccartney, mccartney],
   [mccartney, lennon]
   [lennon, mccartney]

in whatever order.


More information about the sc34wg3 mailing list