by shigemk2

当面は技術的なことしか書かない

2012-08-16から1日間の記事一覧

リスト内包表記

数学における集合の内包的記法に近い。 # xにリストを代入して、パイプの左側でリストの各要素を2倍して出力する Main> [x*2 | x <- [1..10]] [2,4,6,8,10,12,14,16,18,20] # パイプの右側で条件を指定する(述語を指定する、つまりフィルタをかける) Main> […

レンジ

まあRubyとかにもあるよね… 範囲を指定する(数値) Main> [1..20] [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20] 範囲を指定する(小文字の文字列) Main> ['a'..'z'] "abcdefghijklmnopqrstuvwxyz" 範囲を指定する(大文字の文字列) Main> ['K'..'Z'] …

リスト

リストとは一様なデータ構造である。 つまり、同じ型の要素を複数個格納できる。 整数のリストや、文字列のリストなどを作ることが出来るのだ。 Main> let lostNumbers = [4,8,15,16,23,42]Main> lostNumbers [4,8,15,16,23,42] リスト結合Main> [1,2,3,4] +…

if文

doubleSmallNumber x = if x > 100 then x else x * 2 doubleSmallNumber' x = (if x > 100 then x else x*2) + 1 else は必須のようです。 また、if文は1行でまとめられるらしいです。あと、PHPと違って、'も関数名に含めることが出来ます。

Haskellを始めるために

Haskellを始めるために必要なものはテキストエディタとHaskellコンパイラだけ。エディタは勝手に用意してください。コンパイラはThe Glasgow Haskell Compilerを使うのがポピュラーみたい。通称GHC下からダウンロードできます。 Download HaskellMacだとパッ…