Warnung unbenutzte Variable im Haskell-Code

8

Real World Haskell sagt: "Der Haskell-Compiler kann uns warnen, wenn wir eine Variable einführen Benennen Sie ein Muster, aber verwenden Sie es nicht im Körper einer Funktion. "

Ich vergesse oft, Variablen zu verwenden, die ich binde, also möchte ich diese Eigenschaft benutzen. Aber meine ghci und ghc scheinen mit ungenutzten Variablen in Ordnung zu sein, und ich habe das tatsächlich nie gesehen, seit ich Haskell vor ein paar Monaten gelernt habe.

Wie kann ich diese Funktion verwenden? Oder Haskell Compiler hat diese Funktion nicht mehr?

    
Tengu 15.06.2013, 15:24
quelle

3 Antworten

9

Wie bereits erwähnt, ist die Option -fwarn-unused-binds oder -Wall für alle Warnungen. Eine andere ist -Werror , damit die Warnungen die Kompilierung stoppen.

Um sie zu verwenden, übergeben Sie sie in der Befehlszeile an ghc oder ghci . Zusätzlich können Sie während einer Sitzung in ghci

eingeben %Vor%

Mit cabal können Sie ghc-options zum ausführbaren Abschnitt hinzufügen. Zum Beispiel:

%Vor%

Jetzt wird cabal configure && cabal build (und andere Befehle) mit der Option -Wall ausgeführt.

    
thoferon 15.06.2013, 15:45
quelle
6

Sie können sich Warnungen ansehen. Ich verwende in der Regel -Wall in meinen Projekten, die unbenutzte binded Variablen zusammen mit einigen anderen nützlichen Warnungen zeigt. Es gibt auch eine spezifische Markierung ( -fwarn-unused-binds ), um genau das zu tun, was Sie wollen.

    
Satvik 15.06.2013 15:28
quelle
5

Sie können das -fwarn-unused-binds Flag zu ghc oder ghci hinzufügen. Um andere nützliche Warnungen zu aktivieren, verwenden Sie -W . Um alle Warnungen zu aktivieren, verwenden Sie -Wall . Zum Beispiel:

%Vor%     
dflemstr 15.06.2013 15:28
quelle

Tags und Links