如何執行 Haskell Script ?

栏目: 编程语言 · 发布时间: 7年前

内容简介:GHC 是 Haskell 最有名的 compiler,除了可編譯 Haskell 外,還提供了 REPL 與 Script 模式,讓我們甚至可以直接寫 Haskell Script,非常方便。macOS High Sierra 10.13.6GHC 8.4.3

GHC 是 Haskell 最有名的 compiler,除了可編譯 Haskell 外,還提供了 REPL 與 Script 模式,讓我們甚至可以直接寫 Haskell Script,非常方便。

Version

macOS High Sierra 10.13.6

GHC 8.4.3

安裝 GHC

$ brew install ghc

使用 Homebew 安裝 GHC。

REPL 執行 Haskell

修改 Prompt

預設 prompt 為 Prelude> ,可自行修改成 ghci>

.ghci

:set prompt "ghci> "

在 home directory 建立 .ghci ,設定 prompt 為 ghci

如何執行 Haskell Script ?

執行 GHCi

$ ghci

輸入 ghci 執行 GHC 的 REPL 模式。

如何執行 Haskell Script ?

  1. 輸入 ghci
  2. 在 REPL 模式輸入 putStrLn "Hello World" 顯示 Hello World

離開 GHCi

ghci> :quit

輸入 :quit 離開 GHCi。

如何執行 Haskell Script ?

編譯執行 Haskell

GHC 可將 Haskell 編譯成執行檔執行。

建立 Hello World

hello-world.hs

main = putStrLn "Hello World"

以 Haskell 印出簡單的 Hello World

GHC 編譯

$ ghc -o hello-world ./hello-world.hs

使用 ghc 編譯 hello-world.hs

  • -o : o utput 執行檔的檔名

如何執行 Haskell Script ?

如何執行 Haskell Script ?

  1. 編譯出 hello-world 執行檔,也一併編譯出 .hi.hs.o 等中間檔

執行 Hello World

$ ./hello-world

直接執行 hello-world 執行檔。

如何執行 Haskell Script ?

Script 執行 Haskell

Haskell 也可以不用編譯,直接以 Script 形式執行。

建立 Hello World Script

hello-world.hs

#!/usr/bin/env runghc --

main = putStrLn "Hello World"

如何執行 Haskell Script ?

設定執行權限

Script 要能執行,必須先設定期有被執行權限。

$ chmod +x hello-world.hs

使用 chmod 設定 hello-world.hs 能被執行。

如何執行 Haskell Script ?

  1. 紅色 代表有執行權限。

執行 Hello World Script

$ ./hello-world.hs

直接執行 hello-world.hs

如何執行 Haskell Script ?

為了證明 GHC 沒有偷偷編譯,我們來看一下目前目錄。

如何執行 Haskell Script ?

  1. 仍然只有 hello-world.hs ,證明 GHC 沒有偷偷編譯再執行

Conclusion

  • Haskell 除了可編譯外,尚提供 REPL 與 Script
  • 尤其是 Haskell Script,讓 Haskell 的可用性又更上一層樓

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Cyberwar

Cyberwar

Kathleen Hall Jamieson / Oxford University Press / 2018-10-3 / USD 16.96

The question of how Donald Trump won the 2016 election looms over his presidency. In particular, were the 78,000 voters who gave him an Electoral College victory affected by the Russian trolls and hac......一起来看看 《Cyberwar》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

html转js在线工具
html转js在线工具

html转js在线工具