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?
Antwort
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.)
Das zeigt die Importe selbst, nicht die Pakete .... die für die .cabal-Datei benötigt werden. – jamshidh
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
Beim zweiten Blick, ich denke, Sie könnten Recht haben .... Ich habe vielleicht falsch gelesen. – jamshidh
- 1. Importieren von Haskell Modulen
- 2. Der Import von Modulen in NodeJS führt zu Typfehlern.
- 3. Gibt es einen Leistungsvorteil beim expliziten Angeben der OneWay-Bindung beim Einrichten von Bindungen in WPF?
- 4. Bedingter Import von Modulen in Python
- 5. Diagramm-Programm, um beim Entwerfen von Software zu helfen?
- 6. Gibt es eine Möglichkeit, lokale Variablen in Modulen zu verwenden?
- 7. Fehler beim Importieren von Modulen
- 8. Gibt es ein Haskell-Äquivalent von F # Maßeinheiten?
- 9. Typoskript Import-Export-Verhalten von Modulen
- 10. gibt es irgendwelche Tutorials, um einem fähigen C++ Programmierer zu helfen, c zu lernen?
- 11. Was entspricht OCamls Modulen in Haskell?
- 12. Haskell-Bibliothek-Import-Syntax
- 13. Import von Python/Django-Modulen schlägt auf debian vps
- 14. Gibt es einen besseren Weg, dies in Haskell zu tun?
- 15. Gibt es ein Plugin für Vim, das mir beim Debuggen helfen würde wie Visual Studio?
- 16. Gibt es eine implizite ish-Memoisierung in Haskell?
- 17. Gibt es einen Parallelfund in Haskell?
- 18. Gibt es einen gdb-Befehl, um ein Schleifenkonstrukt zu beenden?
- 19. Bedingter Import, um Implementierungen zu wechseln
- 20. mir helfen, zu verstehen Funktionen in meiner Haskell GHCI Konfigurationsdatei
- 21. Gibt es Werkzeuge, die helfen, #includes zu organisieren?
- 22. Gibt es eine Methode, um ein solches Wasserzeichen zu entfernen?
- 23. Gibt es ein Attribut, um Kaskadeneinheitstestfehler in MSTest zu vermeiden?
- 24. Gibt es irgendwelche Werkzeuge, um mit komplexer 'if' Logik zu helfen?
- 25. Gibt es eine Möglichkeit, lineare Typen in Haskell zu emulieren?
- 26. Gibt es eine Möglichkeit, Ergebnisse in Haskell zu "konservieren"?
- 27. Gibt es in Haskell eine "Ketten" -Monadenfunktion?
- 28. Gibt es ein Tool, um Methodenaufrufe in Python zu visualisieren?
- 29. Gibt es ein Programm, um Assembly in C++ zu konvertieren?
- 30. Gibt es in Haskell sowas wie Unterwächter?
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