Wanted: Haskell binding for libbdd (buddy)

Are there any Haskell bindings for BDD libraries (reduced ordered binary decision diagrams)? E.g., it seems "buddy" is commonly used http://packages.debian.org/squeeze/libbdd-dev and it has an Ocaml binding. Yes, there is http://hackage.haskell.org/package/obdd but I need better performance (with the same API, ideally). Thanks - J.W. PS: I wonder where performance goes out the window ... I suspect "Map (Int,Int) whatever" should really be a hashtable but I don't like it in IO, it should be in ST?

2012/8/20 Johannes Waldmann
Are there any Haskell bindings for BDD libraries (reduced ordered binary decision diagrams)?
E.g., it seems "buddy" is commonly used http://packages.debian.org/squeeze/libbdd-dev and it has an Ocaml binding.
Yes, there is http://hackage.haskell.org/package/obdd but I need better performance (with the same API, ideally).
Thanks - J.W.
PS: I wonder where performance goes out the window ... I suspect "Map (Int,Int) whatever" should really be a hashtable but I don't like it in IO, it should be in ST?
Actually, all Maps there should be IntMap's, strict ones. And yes, cache field should be two-level IntMap too. The type Index is good for external typed access, but internally one should use IntMap.
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

On 20/08/2012, at 11:19 PM, Johannes Waldmann wrote:
Are there any Haskell bindings for BDD libraries (reduced ordered binary decision diagrams)?
E.g., it seems "buddy" is commonly used http://packages.debian.org/squeeze/libbdd-dev and it has an Ocaml binding.
My hBDD bindings are on Hackage. I once had a binding to buddy but found CUDD to have superior performance for my application. cheers peter -- http://peteg.org/
participants (3)
-
Johannes Waldmann
-
Peter Gammie
-
Serguey Zefirov