2014-11-04 4 views
6

Dopo aver considerato i motivi here per importare sempre i moduli in modo esplicito (ad eccezione di Prelude), sto cercando di rispettare questa norma. Tuttavia, a volte può essere complicato. Esiste uno strumento che analizzi il codice di lavoro e fornisca un elenco completo delle importazioni esplicite?Esiste uno strumento per facilitare l'importazione esplicita di moduli in Haskell?

+0

Se si compila con '-V' GHC, è possibile vedere tutte le importazioni in una sezione che inizia con' link Info: ((["-lHScryptohash-0.11.6", .... '. Questo ha alcuni problemi però .... In primo luogo, è necessario estrarre le informazioni e analizzarle, e in secondo luogo, sembra contenere più pacchetti di Ho esitato a promuovere questo commento per una risposta a causa di questi problemi, ma forse questo può aiutarti comunque – jamshidh

risposta

6

C'è il flag -ddump-minimal-imports per ghc.

I risultati vengono inseriti nel file (module-name).imports.

L'opzione GHC -fno-code è utile anche qui (per evitare la fase di generazione del codice.)

+0

Questo mostra le importazioni stesse, non i pacchetti .... che sono necessari per il file .cabal. – jamshidh

+0

True , ma non penso che l'OP lo stesse chiedendo. Per ottenere i nomi e le versioni dei pacchetti sembra che 'cabal init' buon lavoro – ErikR

+0

Al secondo sguardo, penso che potresti avere ragione ... Potrei aver letto male. – jamshidh

Problemi correlati