Haskell:
Virheenjäljitystulosteiden tulostaminen
How to:
Miten:
main :: IO ()
main = do
putStrLn "Aloitetaan debuggaus"
printDebugInfo "Tässä on muuttujan arvo" 42
putStrLn "Debuggaus päättyy"
printDebugInfo :: Show a => String -> a -> IO ()
printDebugInfo msg value = putStrLn $ msg ++ ": " ++ show value
Esimerkin tulostus:
Aloitetaan debuggaus
Tässä on muuttujan arvo: 42
Debuggaus päättyy
Deep Dive
Syväsukellus
Haskellissa print
on kätevä funktio virheenetsintätietojen tulostamiseen. Se on lyhenne putStrLn . show
:lle ja tulostaa Show
-tyypin luokkaan kuuluvan arvon. Historiallisesti ohjelmoijat ovat tulostaneet tietoa konsoliin ymmärtääkseen mitä ohjelmassaan tapahtuu. Vaihtoehtoisia työkaluja debuggaukseen ovat muun muassa lokeja kirjaavat kirjastot tai interaktiivinen debuggaus GHCi:n kautta. Implementaation yksityiskohtia miettiessä käytettävyys ja suorituskyky ovat tärkeitä seikkoja; debug-viestien tulisi olla informatiivisia mutta eivät hidastaa ohjelmaa liikaa.
See Also
Katso Myös
- Haskell Debugging - virallinen GHC:n käyttöopas debuggaukseen.
- Hoogle - voit hakea Haskell-funktioita ja kirjastoja.
- Haskell Wiki on Debugging - lisätietoja erilaisista debuggaustyökaluista Haskeleille.