haskell
(過去記事のコピペなので内容が古いかも知れません) (Haskell関連の記事はこれで最後になる予定)ただのメモです普通maybe型の処理は、 let hoge = case hogemaybe of Nothing -> error $ "There is no hoge." _ -> fromJust hogemayby みたいにしてやるこのh…
(過去記事のコピペなので内容が古いかも知れません)久しぶりに触ったのでかなり忘れていたtupleから任意の要素を取り出すときは fst や snd を使うただし、この後の3つめを取り出したいときは、自分で関数を用意しないといけない・・・ fst' :: (a, b, c) ->…
(過去記事のコピペなので内容が古いかも知れません)以前も使ったけど、2列のデータを読み込みたい場合は・・・ Prelude> let a="1 2\n3 4\n5 6" Prelude> map (map read) $ ( map words $ lines a ) ::[[Double]] [[1.0,2.0],[3.0,4.0],[5.0,6.0]] みたいな…
(過去記事のコピペなので内容が古いかも知れません) プログラムのあるパートからあるパートへの実行時間を表示したいときにその目安として時間を表示することがあるHaskellでは Data.Time.Clock にUTCを表示する関数が用意されている import Data.Time.Clock…
(過去記事のコピペなので内容が古いかも知れません)例えばこんなデータがあるとき、 0.327825 -1.760917 -1.238463 -0.636273 2.719690 0.452033 -0.993083 1.277327 -0.826901 -0.378082 Haskellでは、次のようにして読み込むことも可能(他にも色々と読み込…
(過去記事のコピペなので内容が古いかも知れません)Doubleなどの値をそのままprintすると、17桁表示されてしまう 定義上1.0になるべき値も17桁まで表示すると、計算誤差の都合で17桁目で1.0からずれてしまうことがあるそこで表示する桁数を絞って表示したく…
(過去記事のコピペなので内容が古いかも知れません)Haskellでもコマンドラインで実行ファイルに引数を付けてみたくなった。 実行時に、引数を取って、それをあれこれ処理したい。 import System.Environment -- getArgs inputFile <- getArgs でおkghc 7.4か…
(過去記事のコピペなので内容が古いかも知れません、2014/07/08)別に難しくはない import System.Cmd system "ls" とかでおーけー "ls"の部分を別のものに置き換えて使う。
(過去記事のコピペなので内容が古いです、2014/06/07)例えば今、hmatrixというパッケージを使いたいとする最新versionはhmatrix: Numeric Linear Algebra を見ると、0.15.2.1 が最新らしい cabal update cabal info hmatrixとして、詳細を確認すると、 * hma…
(過去記事のコピペ 2013/07/14)実はHaskellには型を推定してくれる機能があるのだ hoge x = x * 2 とソースに書いておいて、 *Main> :t hoge hoge :: Num a => a -> a zipWith2 _ [] _ = [] zipWith2 _ _ [] = [] zipWith2 f (x:xs) (y:ys) = f x y : zipWit…
(過去記事のコピペ 2013/04/25)Hakellのメリットを簡単にかいつまんでまとめておく 遅延評価 与えられた値を必要になるまで評価(計算)しないこと この性質により不必要な計算が行われる無駄をなくすことができるコンピュータグラフィックスでも同じことをす…
(過去記事 2013/04/23)Haskellの勉強会を毎週やっている。 その備忘録 関数を使ってみる まずは次のような hoge.hs を作ってみる で始まる行はコメントアウトhoge.hs doubleMe y = y + y hoge x = x * 100 doubleUs x y = x * 2 + y * 2.0 -- 100より小さい…
コメントアウトの仕方 一行だけだと -- hoge 複数行は {- hoge1 hoge2 -}
(過去記事のコピペです、2013/04/17)Haskellの利点すらきちんと理解していないのに、それでプログラムを書こうとするのはすごいと思う。 いろいろと使い方を調べたメモ書きです コンパイラ GHCというのをインストールする Mac向けのバイナリもあるらしいけど…