|
Boost : |
From: Larry Evans (cppljevans_at_[hidden])
Date: 2005-07-26 09:39:19
On 07/26/2005 07:25 AM, David Abrahams wrote:
> Alex Mendes da Costa <alexmdac_at_[hidden]> writes:
>
>
>>The iterator that I am proposing would provide the sequence (1,10),
>>(2,10), (1,20), (2,20).
>
>
> Oh, you want a cross-product iterator. Interesting idea.
>
BTW, the J or apl term for this would be "outer-product"
(produced with '/' operator) applied to the "append" operator
(','):
,/
IOW:
1 2 ,/ 10 20
produces:
1 10
2 10
1 20
2 20
With another operator, for example, '+' instead of ',',
the result would be:
11 12 21 22
See "outer-product" on p.7 of:
http://www.jsoftware.com/books/pdf/brief.pdf
IOW, Alex's proposal is equivalent to J's:
S1 ,/ S2
except the J result is a matrix instead of a vector,
AFAICT.
J uses the term "inner-product"[p.20] applied to '+' and '*'
operators for "matrix-product" or "cross-product".
("cross product" doesn't occur in above pdf).
A google search for outer product result in several different
definitions :(
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk