Hi Jeremy,

I had used HAppS-IxSet before and was very happy with it, it offered pretty much everything I needed. I switched (back) to SQL once I had hit a bump in the road that I wasn't able to fix, a stack-overflow that occurred once I ran the code against the largest sample data I had. It occurred because I could not make the inserts into the set strict.

However since then my haskell skills have improved somewhat and right now I'm giving it another go.

At that time it seemed that not many people were using IxSet so no-one was really able to help me with it.

I'm glad that even though the original project is discontinued someone else took up the torch.

Günther


Jeremy Shaw schrieb:
At Sun, 08 Mar 2009 00:13:14 +0100,
G?uenther Schmidt wrote:
  
In SQL I would have the data indexed by several 
different columns, if I use maps I'd only have one key, so if I need to 
lookup data in the map by a value that is not the key the lookups will 
become quite expensive.
    

happstack-ixset offers a data-type similar to Map except that you can
have multiple keys. You can even have keys that are calculated from
the data but don't actually appear in the data itself. For, example,
if your ixset just contains Strings, one of the keys could be the
length of the String.

happstack-ixset (and its dependencies) also offers compact
serialization/deserialization of the ixset to disk, data migration
options, and a smattering of other features that may or may not be
useful to you.

While happstack-ixset is built to work with happstack, it is does not
depend on the happstack http server or persistent store layer, so it
should be useful even if you are not being an application server.

- jeremy