Bus errorとSegmentation faultに困ったら見るブログ

物理の研究者による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)

haskell

【Haskell】maybeの処理

(過去記事のコピペなので内容が古いかも知れません) (Haskell関連の記事はこれで最後になる予定)ただのメモです普通maybe型の処理は、 let hoge = case hogemaybe of Nothing -> error $ "There is no hoge." _ -> fromJust hogemayby みたいにしてやるこのh…

【Haskell】tupleから値を取り出す

(過去記事のコピペなので内容が古いかも知れません)久しぶりに触ったのでかなり忘れていたtupleから任意の要素を取り出すときは fst や snd を使うただし、この後の3つめを取り出したいときは、自分で関数を用意しないといけない・・・ fst' :: (a, b, c) ->…

【Haskell】2列のデータを読み取って

(過去記事のコピペなので内容が古いかも知れません)以前も使ったけど、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】UTC時刻を表示する

(過去記事のコピペなので内容が古いかも知れません) プログラムのあるパートからあるパートへの実行時間を表示したいときにその目安として時間を表示することがあるHaskellでは Data.Time.Clock にUTCを表示する関数が用意されている import Data.Time.Clock…

【Haskell】readFileを使ったプレーンテキストの読み込み

(過去記事のコピペなので内容が古いかも知れません)例えばこんなデータがあるとき、 0.327825 -1.760917 -1.238463 -0.636273 2.719690 0.452033 -0.993083 1.277327 -0.826901 -0.378082 Haskellでは、次のようにして読み込むことも可能(他にも色々と読み込…

【Haskell】桁数を制限したいとき

(過去記事のコピペなので内容が古いかも知れません)Doubleなどの値をそのままprintすると、17桁表示されてしまう 定義上1.0になるべき値も17桁まで表示すると、計算誤差の都合で17桁目で1.0からずれてしまうことがあるそこで表示する桁数を絞って表示したく…

【Haskell】コマンドライン引数(getArg)を使ってみる

(過去記事のコピペなので内容が古いかも知れません)Haskellでもコマンドラインで実行ファイルに引数を付けてみたくなった。 実行時に、引数を取って、それをあれこれ処理したい。 import System.Environment -- getArgs inputFile <- getArgs でおkghc 7.4か…

【Haskell】コマンドラインのようにコマンドを実行したい

(過去記事のコピペなので内容が古いかも知れません、2014/07/08)別に難しくはない import System.Cmd system "ls" とかでおーけー "ls"の部分を別のものに置き換えて使う。

【Haskell】古いversionのパッケージをcabalインストールしたい

(過去記事のコピペなので内容が古いです、2014/06/07)例えば今、hmatrixというパッケージを使いたいとする最新versionはhmatrix: Numeric Linear Algebra を見ると、0.15.2.1 が最新らしい cabal update cabal info hmatrixとして、詳細を確認すると、 * hma…

【Haskell】型宣言がまんどくさいとき、

(過去記事のコピペ 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…

【Haskell】Haskellの遅延評価

(過去記事のコピペ 2013/04/25)Hakellのメリットを簡単にかいつまんでまとめておく 遅延評価 与えられた値を必要になるまで評価(計算)しないこと この性質により不必要な計算が行われる無駄をなくすことができるコンピュータグラフィックスでも同じことをす…

【Haskell】第1回勉強会メモ

(過去記事 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より小さい…

【Haskell】コメントアウト

コメントアウトの仕方 一行だけだと -- hoge 複数行は {- hoge1 hoge2 -}

【Haskell】偶然にもHaskellでプログラムを作ることになったおれたちは・・・

(過去記事のコピペです、2013/04/17)Haskellの利点すらきちんと理解していないのに、それでプログラムを書こうとするのはすごいと思う。 いろいろと使い方を調べたメモ書きです コンパイラ GHCというのをインストールする Mac向けのバイナリもあるらしいけど…