The idea of the visit module is to provide API for standard graph traversal algorithms (DFS, BFS) with certain flavors (plain, with events, ...). Apart from being used by the user, it should also provide sufficient API to be used in the algorithm implementations.
The problems are:
- The API for BFS is not sufficient even for implementing a basic algorithm such as shortest paths on unweighted graph (source).
- The
raw submodule is not not exactly pretty. It might be that the ugliness is somewhat inherent due to its purpose, but I believe that some marginal improvements or simplifications can be made.
The idea of the
visitmodule is to provide API for standard graph traversal algorithms (DFS, BFS) with certain flavors (plain, with events, ...). Apart from being used by the user, it should also provide sufficient API to be used in the algorithm implementations.The problems are:
rawsubmodule is not not exactly pretty. It might be that the ugliness is somewhat inherent due to its purpose, but I believe that some marginal improvements or simplifications can be made.