Re: [m-users.] lists and sets, unordered or ordered.

Volker Wysk <[email protected]>
Newsgroups gmane.comp.lang.mercury.general
Message-ID <[email protected]>
Hi

You can get a sorted de-duped list from a set. Why do you need an unsorted
one? If it's efficiency, you need to have it sorted, unless you have only a
few elements.

But be aware that there is the "set" module and five "set_*" modules. The
"set" is using ordered lists. That's inefficient for large sets. Use the
other modules when you have a big set.

Cheers,
Volker

Am Dienstag, dem 03.10.2023 um 21:55 +0100 schrieb Sean Charles
(emacstheviking):
> Indeed. nothing in my drafts folder and I swear it was complete before I hit send... well,
> basically,
> is there a reason you can't get an unsorted de-duped list from a set?
> 
> That's all...   :D
> 
> > On 3 Oct 2023, at 21:53, Volker Wysk <[email protected]> wrote:
> > 
> > Hi, Sean
> > 
> > Your message suddenly stops in the middle of a sentence.
> > 
> > Volker
> > 
> > Am Dienstag, dem 03.10.2023 um 21:39 +0100 schrieb Sean Charles
> > (emacstheviking):
> > > I've just completed a generic typeclass based collision detection system and learned quite a bit doing it!
> > > 
> > > As I was reading the module docs, it seems that there is no 'unordered set without duplicates' unless I missed it, which is entirely reasonable.
> > > 
> > > The output from the collision detection  is two sets of integers, these are the identifiers of the missiles and the things that were hit at the moment. I now want to take this list and then set the '^hit' flag for every missile in that list, for example, the existing code will then no longer render it and remove it on the next iteration.
> > > 
> > > I used sets because they de-dupe as you go, meaning that my checking process is simply iterating two loops, m x n, m missiles and n moving targets, for now it is naive and will probably always be fine given the limited numbers of things on screen at any one time.
> > > 
> > > There seems to be no way to get an unordered, deduplicated list from a set, I can use set_unordlist but that leaves duplicates.
> > > 
> > > 
> > > For now I've decided to use set_unordlist, at the cost of maybe updating the same missile record more than once poost-collision detection, it's not going to kill anything really but mentally, and from a purity point of view it feels 'less optimal' than I wanted. Failing that I might just usr  list.member and use lists for everything like I did!
> > > 
> > > I just wondered what the reasons were for not having the ability to get an unsorted 
> > > _______________________________________________
> > > users mailing list
> > > [email protected]
> > > https://lists.mercurylang.org/listinfo/users
> > 
> > _______________________________________________
> > users mailing list
> > [email protected]
> > https://lists.mercurylang.org/listinfo/users
>

_______________________________________________
users mailing list
[email protected]
https://lists.mercurylang.org/listinfo/users
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEE6QXGh82Ov3+2nrxp+K4ydFOsHoUFAmUcgdMACgkQ+K4ydFOs
HoVFUxAAvaZYXNA1X4vaMgAmKDyQDtJNqpuzG07toAT6bqNmbo9DXj7JE8iSQeg4
9yWE+fAFVZpWGuz6HBYN1+H5RFBw+OxYpU4TfNMuwNCxx4wCcSoXAdGjmnFQvGgE
mKIBAmBUEXej+lp8Ng6yOE/sNV3u33xwzwRdiuYUx72GQ1KBT6lJud8lQ/t3xQZ0
sJoJnqSqgasTnq2up6QsxzmlWUf27ALzaZKlaFHFrNs6+cK1KzrhXlxk99MwuCsH
Y4ab/BjkcBgTXi3EWF5hRgtUJ5jc5DChfKkzJHvURdk6njPyvCcWSrZrqPii7moe
UPY828WP/K3JLTqcxlYtlw2AGII7HLPND/2Q+ImryXOdhhNlO6hPNyAG1BO/zwos
rVm0JIVsU1AvQpbK/LQyMF11Sxpo1V0KrV754oX7L+ah+WVuuC/K6jO0IoYYk0yq
YQ38VkHoRyTcQ6nO63yqiFEXu+jjMhY8TtsrVTROaYhUJCWbJpWPLkmsFo7Kp1UX
bhZ+3hk82ltAMX7qVun1Q/LgBlWuj5T74gHrXZUtlzvA1i4XaFUHWABLGYzoBXoJ
J86fBUrgnSbHqVvLSkOhTqPJigMqWaxzJY5+56Amo3DnMj7m+dKNFvNHHB23pidM
maPnMd2fIMIdRwm4wQpWNOC25AbEGn+K2b1NqXI2t7v54fd2EEQ=
=CFyC
-----END PGP SIGNATURE-----
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.