import "Reflection" (moduleDependencyGraph) import "Visualization/GGraph" showModuleDependencyGraph :: () showModuleDependencyGraph = do graph = newGGraph [Rankdir "LR"] $ \r -> [Label r, Shape "rect"] for moduleDependencyGraph $ \(moduleName, deps) -> for (filter interestingDependency deps) $ \(depModuleName, localName, importSpec) -> newGEdge graph moduleName depModuleName [] showGGraph graph where interestingDependency (moduleName, localName, importSpec) = not (startsWith moduleName "http:") && localName != Nothing