【Haskell】代码运行方式


本节用到的测试代码 hello_world.hs

-- hello world
{-
    hello world
-}

main = putStrLn "hello world"

我们依然以hello world程序为例,顺别介绍下Haskell中的注释。

编译式

执行ghc hello_world.hs,会生成hello_world.exehello_world.hihello_world.o三个文件。

脚本式

Haskell程序也可以以脚本的方式运行,方便学习和简单测试。有两个命令可以以脚本方式执行Haskell代码。

runHaskell

执行命令runHaskell hello_world.hs,输出结果。

runghc

执行命令runghc hello_world.hs,输出结果。

交互式

输入命令:l hello_world.hs加载文件,然后输入main执行代码,得到结果。

在这里甚至都不用创建文件,可以直接输入代码执行。如果需要输入多行代码,以:{开始,:}结束。以下示例来源于官网。

ghci> :{
| g op n [] = n
| g op n (h:t) = h `op` g op n t
| :}
ghci> g (*) 1 [1..3]
6

有关ghc和ghci的详细文档见官网

cabal

cabal是Haskell的包管理工具,也是编译管理工具。通过cabal init命令交互式创建工程,cable run命令运行工程。

stack

stack也是用来构建Haskell工程的工具,功能十分强大。stack new projectName创建新工程,注意projectName不要包含下划线。stack run构建并运行,stack build构建工程。


有个好消息是在本文写作的时候,GHC已经更新到9.0.1了,不过遗憾的是Haskell官网已不再提供All In One的安装包,你可以单独安装GHC和Cabal,或者参考官网的安装方式。最新版的GHC要求Cabal版本必须是2.4以上,如果你是用Vs Code作为Haskell的开发工具,还需要注意官方的Haskell插件最高只支持到8.10.4版本的GHC。更多信息及下载见GHC 官网


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值