Hi!

If my understanding is correct, Dict is backed by a sorted data structure 
(Relaxed Radix Balanced-Trees).
However, it does not seem expose a way obtain a subset of the data, other 
than to iterate through all the keys from first to last. Is this correct?

My use case is this: I'm making an index for a graph, currently stored in a 
Dict, and I'm looking into ways of how to query the index efficiently. So 
far my only method is to iterate through all the keys and getting my 
selections using List.filter. However, this seems inefficient when the 
index is big.

I'm new to Elm and have limited experience with functional programming, so 
I'm probably looking at this from a wrong angle.

If I was working in a imperative language - I would store the index in a 
sorted structure, and seek in it using binary search. So for example, if my 
index was an alphabetically sorted list of words, and I wanted to fetch 
only the words starting with the letter "s" up to the letter "t", I would 
binary seek to first occurrence of s, obtain a cursor from there and keep 
reading until the first occurrence of the letter "t". 

Is there a way to achieve something similar in Elm, perhaps using a 
different data structure or package?

Regards,
Boutros

-- 
You received this message because you are subscribed to the Google Groups "Elm 
Discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to