Haskell:
הדפסת פלט לניפוי באגים
איך לעשות:
main :: IO ()
main = do
let x = 5
putStrLn $ "The value of x is: " ++ show x
-- This will print: The value of x is: 5
פלט דוגמה:
The value of x is: 5
עוד דוגמה:
import Debug.Trace (trace)
main :: IO ()
main = do
let list = [1..5]
let listWithDebug = traceShow list list
putStrLn $ "Processing list: " ++ show (incrementAll listWithDebug)
incrementAll :: [Int] -> [Int]
incrementAll = map (+1)
-- This will also print the list to the console as a side effect
פלט דוגמה:
[1,2,3,4,5]
Processing list: [2,3,4,5,6]
עיון נוסף
בעבר, הדפסה לשם דיבאג הייתה הדרך העיקרית לאיתור באגים. כעת, יש כלים מתקדמים יותר כמו מנתחים ומעקבי קריאה, אבל הדפסות עדיין נפוצות בגלל פשטותן ונוחיותן. ב-Haskell, תכניתנים יכולים להשתמש בפונקציית print
, הפונקציות שבמודול Debug.Trace
, או עם כלי דיבאג חיצוניים. זה בחירה של מטרה ועדיפות אישית.