Newest at the top
| 2026-03-07 15:55:22 +0100 | <Guest89> | Data.Set is probably a fine compromise for the moment |
| 2026-03-07 15:55:10 +0100 | <[exa]> | anyway if that's the case, Data.Set is pure and should be quite fast too. |
| 2026-03-07 15:54:52 +0100 | <[exa]> | I kinda thought that this is the implementation of the system where you're proving stuff |
| 2026-03-07 15:54:46 +0100 | <Guest89> | yes |
| 2026-03-07 15:54:33 +0100 | <[exa]> | wait why not (you're proving that something can be done purely?) |
| 2026-03-07 15:53:29 +0100 | <Guest89> | I think for the purposes of my thesis it's invalid because I theoretically can't rely on random access |
| 2026-03-07 15:53:12 +0100 | <[exa]> | Guest89: the structure is a completely normal binary heap in array, makeHeap and related stuff is on wiki |
| 2026-03-07 15:53:07 +0100 | AlexNoo__ | (~AlexNoo@178.34.150.243) |
| 2026-03-07 15:52:42 +0100 | <[exa]> | Guest89: oh great :) |
| 2026-03-07 15:52:21 +0100 | AlexNoo_ | (~AlexNoo@178.34.150.243) |
| 2026-03-07 15:48:25 +0100 | GdeVolpiano | (~GdeVolpia@user/GdeVolpiano) (Read error: Connection reset by peer) |
| 2026-03-07 15:48:19 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-03-07 15:47:53 +0100 | GdeVolpi1 | (~GdeVolpia@user/GdeVolpiano) GdeVolpiano |
| 2026-03-07 15:43:20 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-03-07 15:32:17 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2026-03-07 15:28:35 +0100 | simpleshun | (~simpleshu@user/SimpleShun) SimpleShun |
| 2026-03-07 15:25:17 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-03-07 15:16:50 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-03-07 15:12:06 +0100 | <Guest89> | oh damn, strict data actually massively improved the runtime on larger inputs |
| 2026-03-07 15:11:39 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-03-07 15:08:00 +0100 | <Guest89> | exa do you have a reference description of the data structure? |
| 2026-03-07 15:07:26 +0100 | <Guest89> | well the point is more that the data structures should be limited to trees and lists |
| 2026-03-07 15:00:55 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-03-07 14:55:52 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-03-07 14:52:32 +0100 | <[exa]> | (missing def.: ofKey (a :> _) = a ) |
| 2026-03-07 14:51:41 +0100 | <[exa]> | (apologies for the streaming mess around) |
| 2026-03-07 14:50:36 +0100 | <[exa]> | anyway I ended up replacing pqueue with this (the code is essentially a multi-stream merge): https://paste.tomsmeding.com/UskOMkBm, was like 3x faster |
| 2026-03-07 14:50:01 +0100 | <[exa]> | +1 for set, not too slow at all |
| 2026-03-07 14:49:47 +0100 | <haskellbridge> | <loonycyborg> if you ever need smallest element you can use set |
| 2026-03-07 14:49:30 +0100 | [exa] | hides |
| 2026-03-07 14:49:27 +0100 | <[exa]> | tuple is also an array |
| 2026-03-07 14:48:41 +0100 | <Guest89> | part of my thesis involves *not* using arrays though |
| 2026-03-07 14:48:28 +0100 | <Guest89> | I only ever need the smallest element |
| 2026-03-07 14:48:21 +0100 | <[exa]> | if not they are strictly slower than a manual arrayheap |
| 2026-03-07 14:48:09 +0100 | <[exa]> | PQueues are great IF you need to also pick the elements by some index |
| 2026-03-07 14:47:43 +0100 | <Guest89> | otherwise I have some toy implementations from chris okasaki's book but it's, uhh, not working as intended right now |
| 2026-03-07 14:46:51 +0100 | <Guest89> | the only asymptotic difference is constant or log time lookup though |
| 2026-03-07 14:46:42 +0100 | <Guest89> | I was conisdering using I think it's called PQueue? |
| 2026-03-07 14:46:27 +0100 | <Guest89> | right now it's just a red-black tree so it's not an optimal priority queue |
| 2026-03-07 14:46:20 +0100 | <[exa]> | just in case lemme find my quickhacked heapqueue implementation |
| 2026-03-07 14:46:02 +0100 | <Guest89> | it's not as much of a hot spot as I expected |
| 2026-03-07 14:45:57 +0100 | <[exa]> | so a priority list? |
| 2026-03-07 14:45:51 +0100 | <Guest89> | yes |
| 2026-03-07 14:45:39 +0100 | <[exa]> | btw do you store these things in some kindof priority queue or ordered container or so? |
| 2026-03-07 14:44:50 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
| 2026-03-07 14:44:24 +0100 | <Guest89> | ooo |
| 2026-03-07 14:44:17 +0100 | <[exa]> | btw you can write that case-y comparison as: `compare s1 s2 <> compare r1 r2 <> compare ishigh1 ishigh2` |
| 2026-03-07 14:43:42 +0100 | <Guest89> | we could move to a separate chat if you want |
| 2026-03-07 14:43:23 +0100 | <[exa]> | oh cool |
| 2026-03-07 14:43:03 +0100 | <Guest89> | do you want a new profile? |