小编Chr*_*ian的帖子

Haskell - 与数据类型匹配的模式

我有一个这样的数据类型和函数:

data Expr = Num Int | Add Expr Expr | Mult Expr Expr | Neg Expr | If Expr Expr Expr deriving (Show, Read)

prettyPrint :: Expr -> IO () 
prettyPrint expr = prettyPrint' expr 0


prettyPrint' :: Expr -> Int -> IO () 
prettyPrint' (Num x) i = putStrLn $ concat (replicate i "    ") ++ "Num " ++ show x

prettyPrint' (Add x y) i = do
    putStrLn $ concat (replicate i "    ") ++ "Add" 
    prettyPrint' …
Run Code Online (Sandbox Code Playgroud)

haskell

6
推荐指数
1
解决办法
122
查看次数

标签 统计

haskell ×1