Haskell:
Skriving til standardfeil
Hvordan:
I Haskell er det enkelt å skrive til stderr med basebibliotekets System.IO-modul. Nedenfor er et grunnleggende eksempel for å demonstrere:
import System.IO
main :: IO ()
main = do
hPutStrLn stderr "Dette er en feilmelding."Utdataene fra dette programmet til stderr ville være:
Dette er en feilmelding.Hvis du jobber i en mer kompleks applikasjon, eller hvis du trenger bedre kontroll over logging (inkludert feil), kan du velge et tredjepartsbibliotek. Et populært valg er monad-logger som integrerer med mtl-stilen til Haskell-programmering. Her er et lite utdrag som bruker monad-logger:
{-# LANGUAGE OverloadedStrings #-}
import Control.Monad.Logger
main :: IO ()
main = runStderrLoggingT $ do
logErrorN "Dette er en feilmelding som bruker monad-logger."Når den kjøres, gir monad-logger-versjonen på samme måte ut en feilmelding, men den er utstyrt med mer kontekst, som tidsstempler eller loggnivåer, avhengig av konfigurasjonen:
[Error] Dette er en feilmelding som bruker monad-logger.Begge metodene tjener formålet med å skrive til stderr, med valget som i stor grad avhenger av kompleksiteten og behovene til applikasjonen din.