I recently sent the following email to Henry. I thought it would be
nice to know different ways of getting cartesian product(except the
built-in catalogue) that other people know.

So, do you know of different ways of getting the cartesian product such as,

   cpd=:,"_1 _"_ _1
   cp=:[: > [: ([: ,/ cpd)&.>/ ,&.>
   /:~ cp 1 2;3 4 5;0;8 9
1 3 0 8
1 3 0 9
1 4 0 8
1 4 0 9
1 5 0 8
1 5 0 9
2 3 0 8
2 3 0 9
2 4 0 8
2 4 0 9
2 5 0 8
2 5 0 9


2008/1/29, June Kim <[EMAIL PROTECTED]>:
> Hello,
>
> on file:///C:/j601/system/extras/help/jforc/odds_and_ends.htm#_Toc141158196
>
> There is a definition for cartesian product but I think there is a typo.
>
> <quote>
> The cartesian product can be written in J as ,"_1 " _1 (or, if the
> items have rank 0, by the table adverb ,"0/), as seen in this example
> where we box each result:
>
>   'io' <@,"_1 " _1 'nfd'
> </quote>
>
> I think it should've been instead:
>
> ,"_1 _"_ _1   NB. to be precise and revealing the intention, but...
> ,"_1 "_ _1     NB. this would work, too

Actually, the latter works in the given example, but not in general cases.

>
>
> Thank you for your work.
>
> June Kim
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to