
Einar Karttunen wrote:
Hello
Is there an elegant way of traversing a directed graph in STM?
type Node nt et = TVar (NodeT nt et) type Edge et = TVar et data NodeT nt et = NodeT nt [(Node nt et, Edge et)]
type MyGraph = Node String Int
When implementing a simple depth first search we need a way to mark nodes (= TVars) as visited. In addition multiple concurrent searches should be possible.
And the concurrent searches are isolated from each other? Or are you performing a single search using many threads?
Is it possible to avoid passing around an explicit Set of visited nodes? And is there a better way of getting TVar identity than StableNames?
- Einar Karttunen _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe