2014-11-04 4 views
6

Nachdem ich die Gründe here betrachtet habe, Module immer explizit zu importieren (mit Ausnahme von Prelude), versuche ich mich an diese Norm zu halten. Dies kann jedoch manchmal umständlich sein. Gibt es ein Tool, das den Arbeitscode analysiert und eine vollständige Liste der expliziten Importe enthält?Gibt es ein Hilfsmittel, um beim expliziten Import von Modulen in Haskell zu helfen?

+0

Wenn Sie mit 'ghc -V' kompilieren, können Sie alle Einfuhren in einem Abschnitt sehen, die mit' Link-Info beginnt: (["-lHScryptohash-0.11.6", .... '. Das hat jedoch einige Probleme .... Zuerst müssen Sie die Informationen herausziehen und parsen, und zweitens scheint es mehr Pakete zu enthalten als Ich zögere, diesen Kommentar zu einer Antwort wegen dieser Probleme zu befördern, aber vielleicht kann Ihnen das trotzdem helfen. " – jamshidh

Antwort

6

Es gibt die -ddump-minimal-imports Flagge für ghc. Die Ergebnisse werden in der Datei (module-name).imports abgelegt.

Die -fno-code ghc Option ist auch hilfreich, hier (die Codegenerierungsphase zu vermeiden.)

+0

Das zeigt die Importe selbst, nicht die Pakete .... die für die .cabal-Datei benötigt werden. – jamshidh

+0

True , aber ich glaube nicht, dass das OP danach gefragt hat.Um Paketnamen und -versionen zu bekommen, scheint 'cabal init' ein Prett zu sein y gute Arbeit. – ErikR

+0

Beim zweiten Blick, ich denke, Sie könnten Recht haben .... Ich habe vielleicht falsch gelesen. – jamshidh

Verwandte Themen