Joe*_*rdy 25 bash command-line haskell
有可能输出到stdout一个简单的Haskell单线程
main = print "Hello World"
直接来自Bash?东西php -r 'echo "Hello World\n";'
我在ghc选项中四处寻找,但我没有看到任何可以帮助我的东西.
Joe*_*rdy 24
$ ghc -e "interact (unlines.map reverse.lines)"
hello
olleh
Run Code Online (Sandbox Code Playgroud)
更新:
刚做了一些测试,这也有效:
echo "hi" | ghc -e "interact (unlines.map reverse.lines)"
// prints "ih"
Run Code Online (Sandbox Code Playgroud)
elm*_*elm 11
考虑runhaskell可以采用管道stdin的命令,例如像这样,
echo 'main = print "Hello World"' | runhaskell
Run Code Online (Sandbox Code Playgroud)
更新
通常,您可以按如下方式编写Haskell源代码,
#!/usr/bin/env runhaskell
main = putStrLn "Hello World"
Run Code Online (Sandbox Code Playgroud)
这实际上编译并执行程序,而ghc -e将评估表达式.
你找到了ghc -e自己.以下是一些与之相关的有用别名:
function hmap { ghc -e "interact ($*)"; }
function hmapl { hmap "unlines.($*).lines" ; }
function hmapw { hmapl "map (unwords.($*).words)" ; }
Run Code Online (Sandbox Code Playgroud)
(在我的这篇老博文中讨论过.)
| 归档时间: |
|
| 查看次数: |
886 次 |
| 最近记录: |