takuocean’s diary

備忘録がメインなので、説明が足りないことも多い。もう少し詳しくという人はコメントをお願いします。

Hakell 導入

はじめまして、まだまだぴよぴよのエンジニアです。

経歴からいうと、大学では機械工学科で学び、材料力学を得意としてました。ただ画像処理をしてみたかったので、研究室では医療系の画像処理の研究に携わり、プログラマ人生がスタートしました!!!!現在は精密機械メーカーでプログラマをやってます。

主にC言語を業務では利用し、最近Haskellを勉強し始めました。

動機としては

    • 関数型言語をやってみたい
    • 周りの人がやっていない
    • このブログでべた褒めだった(笑)

      postd.cc

 

からです。

 

ということで、まずは環境作りから始めました。

  1. Haskellのインストール
  2. パッケージ管理ツール(stack)のインストール
  3. エディタ(vim)の導入

の順で説明します。OSはUbuntu14.04です。

 

1.Haskellのインストール

まずはHaskellをインストールします。

$ sudo apt-get install haskell-platform

このコマンドで以下を一括でインストールできます。

ghcはhakellで一番使われるコンパイラインタプリタ(ghci)です。 

 

2.パッケージ管理ツール(stack)のインストール

次にHaskellのパケージ管理ツールであるstackをインストールします。

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 575159689BEFBh442
echo 'deb http://download.fpcomplete.com/ubuntu trusty main'|sudo tee /etc/apt/sources.list.d/fpco.list
sudo apt-get update && sudo apt-get install stack -y
stack setup

ubuntuでいうapt-getみたいなものなのかな?

stack path

でstackに関するPathが表示されます。

 

3.エディタ(vim)の導入

最後にエディタを導入します。僕は普段エディタはvimを使うので、vimをこれからもvimを使った説明をしていきます。vimをいれたい人は以下のコマンドでインストールしてください。

sudo apt-get install vim

これでhaskellを動かせます。試しに与えた引数の約数を求めるプログラムを動かしてみます。sample.hsと書いてみてください。

vim sample.hs

ここに約数を求めるfactors関数を記述していきます。vim初めての人は上のコマンドを実行した後,「i」を押して以下のソースを入力します。

factors :: Int -> [Int]
factors n = [x | x <- [1..n], n `mod` x == 0]

入力後、「Esc」→「:wq!」の順で入力していきます。vimについては後日書いていきたいと思います。

ghciを立ち上げて

ghci

以下のコマンドを実行します。

:l sample.hs

これで先ほどのfactorsがロードされました。

factors 10

とすると、[1,2,5,10]という結果が返ってきます。確かに、この4つの数字は10の約数ですね。

 

プログラムを動かすところまでできました。では、また!