Po rozważeniu powodów, dla których here zawsze importować moduły jawnie (z wyjątkiem Prelude
), staram się przestrzegać tej normy. Może to jednak czasem być uciążliwe. Czy istnieje narzędzie, które przeanalizowałoby działający kod i dałoby pełną listę wyraźnych importów?Czy istnieje narzędzie do pomocy przy jawnym importowaniu modułów w Haskell?
Odpowiedz
Istnieje flaga -ddump-minimal-imports
dla .
Wyniki są umieszczane w pliku (module-name).imports
.
Opcja ghc -fno-code
jest również pomocne tutaj (w celu uniknięcia fazy generowania kodu.)
To pokazuje import samych, a nie pakiety .... które są potrzebne do pliku .cabal. – jamshidh
True , ale nie sądzę, że OP o to prosił, ponieważ w celu otrzymania nazw pakietów i wersji wydaje się, że 'cabal init' ma prett Dobra robota. – ErikR
Po drugim przejrzeniu, myślę, że masz rację ... Być może źle odczytałem. – jamshidh
Jeśli skompilować z 'ghc -V' można zobaczyć wszystkie importu w odcinku, który rozpoczyna się od' Link Info: ((["-LHScryptohash-0.11.6", .... '. Ma to jednak pewne problemy .... Najpierw trzeba wyciągnąć informacje i przeanalizować je, a po drugie, wydaje się, że ma więcej pakietów niż Waham się, aby ten komentarz odpowiedzieć z powodu tych problemów, ale być może to i tak może ci pomóc – jamshidh