Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

勢いでHaskellのHelloWorldを書いてみる

関数型言語全然知らない。

コンパイラをインストールしてみる

とにかくHaskellコンパイラをダウンロードしてみる。


The Glasgow Haskell Compiler
http://www.haskell.org/ghc/


Haskellにはいろいろ実装があるらしい。よくわからないので、最初に検索で引っかかったGHCとやらにしてみる。


今回は「ghc-6.8.2-i386-windows.exe」でした。
実行してインストール。デフォルトのまま進める。
終わったらPathに追加する。今回なら「C:\ghc\ghc-6.8.2\bin」をPathに追加する。
コマンドプロンプトでこう出たらOKみたい。

C:\>ghc -v
Glasgow Haskell Compiler, Version 6.8.2, for Haskell 98, stage 3 booted by GHC version 6.6
Using package config file: C:\ghc\ghc-6.8.2\package.conf
wired-in package base mapped to base-3.0.1.0
wired-in package rts mapped to rts-1.0
wired-in package haskell98 mapped to haskell98-1.0.1.0
wired-in package template-haskell mapped to template-haskell-2.2.0.0
wired-in package ndp not found.
Hsc static flags: -static
*** Deleting temp files:
Deleting:
*** Deleting temp dirs:
Deleting:
ghc: no input files
Usage: For basic information, try the `--help' option.

Hello World書いてみる

main = putStrLn "Hello World!"

「hello.hs」という名前で保存する。

C:\ghc>ghc hello.hs

「hello.hi」と「hello.o」というファイルができた。。。こっからどうするんだ??


こうするとすぐ実行できるらしい。

C:\ghc>ghc -e main hello.hs
Hello World!

出たっ!


でもコンパイル→実行でも出したい。
どうやらオプションがいるようだ。

C:\ghc>ghc --make hello.hs
Linking hello.exe ...

C:\ghc>C:\ghc\hello.exe
Hello World!

「--make」オプションをつけると、exeファイルができるらしい。それを実行すると出ました!

参考サイト

tiutiu.net - haskellの覚書
http://tiutiu.net/program/language/haskell/