sli*_*sec 12
main = putStrLn "Hello, World!"
Run Code Online (Sandbox Code Playgroud)
来自http://www.haskell.org/haskellwiki/Haskell_in_5_steps
互联网并不是那么糟糕!
app*_*ive 11
有人应该提到interact哪些是简单而实际的:
main = interact reverse
Run Code Online (Sandbox Code Playgroud)
$ cat interact.hs | runhaskell interact.hs esrever tcaretni = niam
因此
main = interact (unwords . reverse . words)
Run Code Online (Sandbox Code Playgroud)
$ cat interact.hs | runhaskell interact.hs words) . reverse . (unwords interact = main
或者带导入
import Data.List
main = interact (intersperse '\n')
Run Code Online (Sandbox Code Playgroud)
$ echo "hello" | runhaskell interact.hs h e l l o
或者,现在正在编译:
main = interact showCharcount
where showCharcount str = show (length str) ++ "\n"
Run Code Online (Sandbox Code Playgroud)
$ ghc --make -O2 interact.hs -o charcount $ echo "hello world" | ./charcount 12
在这种情况下,开始做一些穷人的基准测试是有道理的:
$ time cat /usr/share/dict/words | ./charcount 2486813 real 0m0.096s
这个答案更侧重于"看到魔法发生":
data Expression = Greeting | Leaving
f :: Expression -> String
f Greeting = "Hi there!"
f Leaving = "Ok, bye!"
main = putStrLn (f Greeting)
Run Code Online (Sandbox Code Playgroud)
所有斐波那契数字怎么样?好吧,为简洁起见,你可以打印100个这样的东西..;)
fibs = 1 : scanl (+) 1 fibs
main = print $ take 100 fibs
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2507 次 |
| 最近记录: |