Why everything inside Elemental Chat is being sorted inside the client?

Yeah, that so true… In fact, that’s true with even links; they leave ever-lasting waste too…

Sadly, yes… That’s why, especially for use-cases where new entries won’t have to be fit in the middle, it’s a good option. Though not so great for the ones you describe (where new data might have to be fitted within, and not at the ends)…

Exactly. That’s what I’m also saying; that there are specific use-cases for which Path is a bad option. [And somehow (rather unluckily) I run into them all the time… Haha!]

Oh, those are all just a bunch of hacks and fixes; not a cure of the disease itself!

yeah i think it needs to say ‘links to’

1 Like

it’s a tree though with a well formed structure

0 -> all cars above MAX/2
-> all cars below MAX/2 -> all MAX/2 > cars > MAX/4
-> all MAX/4 > cars > 0 -> … MAX/16

etc.

so let’s say the path goes 4 hops down to MAX/16 per bucket ‘o’ price

as a user i want the lowest price, so i can start at MAX/16 > cars > 0

if there are zero results i can ‘zoom out’ to MAX/8 > cars > 0

if there are zero results i can ‘zoom out’ to MAX/4 > cars > 0

if there are results, i can then traverse the graph back down following the low size of each branch that is found

the logic is ‘zoom in and out’ not ‘order and enumerate buckets’

I guess something like this is what you’re talking about:

Sure indeed, at every hop we only have to process a fraction of what we had to in the previous hop; the problem space reduces to half in every step (since, in this example, we have a “binary” one). So, yeah, pretty neat zoom-out, zoom-in.


The catch is: we don’t know what the MAX is! And would never know! The market is so dynamic, after all.

Plus neither do we want to visit just about any arbitrary node; we’re only interested in the leftmost branch; so a tree would be an overkill.

you do know the max because you’re working with unsigned integers that have a maximum value

1 Like

Yeah, in that sense, you’re right… That’s what I always seem to overlook!