Re: [m-users.] Cartesian product of two sets of things.

"Sean Charles (emacstheviking)" <[email protected]>
Newsgroups gmane.comp.lang.mercury.general
Message-ID <[email protected]>
Hi Julien,

In my original post there is this line of code:

 % set_hit(), Target is not mutable here...have another think!

I initially thought that I would indeed set the hit flags on the targets at the time the collision detection code said something was hit. I do indeed already have an earlier version that does this, obviating the needs for the sets at all, but for some reason I decided to do some experiments to see where it would lead.

Since my question, I have now seen a nice cartesian solution I didn't know about, and decided to reinstate my initial, what I thought could have been fancier solution, and just call the set_hit() function on the object(s)...this of course means that the output from the collision detector is just updated lists of input objects, meaning, yes, I don't need any of the ID sets blah blah blah.

Sometimes you just have to tinker to see what the options are and what benefits they may/may not have.

Thanks all,
Me.


> On 10 Oct 2023, at 07:09, Julien Fischer <[email protected]> wrote:
> 
> 
> On Mon, 9 Oct 2023, Sean Charles (emacstheviking) wrote:
> 
>> The output is two lists, the object IDs of those things involved in collisions.
>> My question then is, given the two loops are basically generating a
>> cartesian product, is there a module function somewhere that would do
>> that for me, generate a single list of all pairs? Then I could
>> list.chunk and maybe produce a cleaner bit of code. I am currently
>> also considering on uncommenting out the set_hit() typeclass predicate
>> so that I can modify the objects in place, so instead of returning two
>> sets of objects ID,s I'd be returning a new set of objects with their
>> respective hit flags set.
> 
> My questions are: what do you do with those object ids once you have
> them? And could you do whatever that is inside the loop that generates
> the Cartesian product without building up a list or set containing the
> product?
> 
> Julien.

_______________________________________________
users mailing list
[email protected]
https://lists.mercurylang.org/listinfo/users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.