- Description of syntactic sugar
Summary of the various uses of syntactic sugar in Haskell
- For more information, see the chapter 深入函数
description
|
sweet
|
unsweet
|
sections
|
(+2)
(3-)
|
\x -> x + 2
\x -> 3 - x
|
- For more information, see the chapters 列表和元组 and 深入列表
description
|
sweet
|
unsweet
|
lists |
[1,2,3] |
1:2:3:[]
|
arithmetic sequences
|
[1..5]
[1,3..9]
[1..]
[1,3..]
|
enumFromTo 1 5
enumFromThenTo 1 3 9
enumFrom 1
enumFromThen 1 3
|
list comprehensions |
[ x | (x,y) <- foos, x < 2 ]
|
let ok (x,y) = if x < 2 then [x] else []
in concatMap ok foos
|
- For more information, see the chapters 理解 Monad and Arrows
description
|
sweet
|
unsweet
|
Sequencing
|
do putStrLn "one"
putStrLn "two"
|
putStrLn "one" >>
putStrLn "two"
|
Monadic binding
|
do x <- getLine
putStrLn $ "You typed: " ++ x
|
getLine >>= \x ->
putStrLn $ "You typed: " ++ x
|
Let binding
|
do let f xs = xs ++ xs
putStrLn $ f "abc"
|
let f xs = xs ++ xs
in putStrLn $ f "abc"
|
- For more information on layout, see the chapter on 缩进
|
The 语法糖 module是这本维基书Haskell中的一个草稿。 你可以通过扩展它来帮助维基书。
|