閑古鳥

オールドプログラマの日記。プログラミングとか病気(透析)の話とか。

Haskell

フィボナッチ数を求めるプログラム

SICP読み始めた記念にHaskellで書いてみました。久しぶりなので非常に苦労しました。 再帰 main = print $ fib 50 fib :: Integer -> Integer fib 0 = 0 fib 1 = 1 fib (n) = fib(n-2) + fib(n-1) 反復 main = print $ fib 50 fib :: Integer -> Integer fib…

getArgs

久しぶりに Haskell 。 import System main = do args <- getArgs text <- readFile $ head $ args putStrLn textこれがコンパイルできて、 import System main = do text <- readFile $ head $ getArgs putStrLn textこれがコンパイルできない理由がわから…

今日の日付を取得する (2)

関数を使ってみる。あと、日付の整形を formatCalendarTime 関数に置換。 module Main where import Time import Locale today :: IO CalendarTime today = getClockTime >>= toCalendarTime main = do tm だいぶすっきり。

今日の日付を取得

標準ライブラリの Time モジュールを使用すると日時の操作ができる。 module Main where import Time import Ix main = do c >= toCalendarTime) putStrLn $ show (ctYear c) ++ "-" ++ show ( (index(January, December) (ctMonth c)) + 1) ++ "-" ++ show …

Haskell で Hello World

Haskell やりたいと言い出してからずいぶん経ちますが、やっとコンパイラをインストールしました。で、とりあえず、 Hello World 。 main = let a = "Hello World" in putStrLn a let の意味は解ったけれど、 in の方がまだ解っていません (書いてみたらコン…