Visual Studio Code で Haskell の環境を構築する
Visual Studio Codeを使う 最近プログラム開発使うのは、VisualStudioかAtomばかりでした。 Haskellでプログラムを書くときはAtomを利用しているのですが、Visual Studio Codeを使って簡単な環境を構築し、こちらでHaskellのプログラムを書いていこうと思います。 以下導入手順を記します。動作環境はWindows10です。 Visual Stud […]
Web備忘録 プログラミングを中心に技術的な事柄を忘れないように書き残します。
Visual Studio Codeを使う 最近プログラム開発使うのは、VisualStudioかAtomばかりでした。 Haskellでプログラムを書くときはAtomを利用しているのですが、Visual Studio Codeを使って簡単な環境を構築し、こちらでHaskellのプログラムを書いていこうと思います。 以下導入手順を記します。動作環境はWindows10です。 Visual Stud […]
Haskellのお勉強 Haskellで平均を求める処理を書くことができたので、そこからさらに分散と標準偏差を求めてみました。 Haskellのコード main = do print $ average numbers -- 55.0 print $ variance numbers -- 600.0 print $ standartDeviation numbers -- 24.49489742 […]
Haskellのお勉強 ハノイの塔やユークリッドの互除法、エラトステネスの篩などのアルゴリズムをHaskellで実装したりしてきました。 なんとなくHaskellでの書き方が身についてきたような気がします。 最近これまたなんとなく統計学の本も読んでいて、数年前の勉強内容を思い出そうとしています。 その中で分散や標準偏差が初歩として出てきているのですが、これをHaskellで書いてみようと思いました […]
Haskellのお勉強 今日もHaskellの勉強がてら10進数からN進数(1..16進数)への変換処理を書いてみようと思います。関数に変換する数値と、何進数に変換するかの数値を渡すと、変換された文字列がかえってくるイメージです。 早速ですがHaskellのコードです。N進数の適当な言葉が英語で見つからなかったのでNStringとしました。 Haskellのコード intToNString :: […]
Haskellのお勉強 絶賛Haskell強化週間中です。これまでハノイの塔、ユークリッドの互除法、それぞれのアルゴリズムをHaskellで実装しましたが、今回は素数判定をしてみようと思います。 素数判定にはさまざまな判定法があるらしいのですが、今回は単純な試し割りによる素数判定とエラトステネスの篩をHaskellで書いてみます。 いずれも Wikipediaに記事が有りますのでそれを参考にしてい […]
Haskellのお勉強 ハノイの塔の記事のときと同じように、今回もHaskellのお勉強のためにユークリッドの互除法による最大公約数の取得処理をHaskellで実装してみました。 まずは実装したコードを載せます。 main = print $ getGcd 1071 1029 -- 21 -- 最大公約数を求める関数 getGcd :: Int -> Int -> Int getGcd […]
Haskellのお勉強でハノイの塔を解く Haskellの勉強がしたい … と思い、Haskellでハノイの塔を解く処理を書いてみました。Haskellの文法をそっくり忘れていましたが、思い出しつつ書きました。 まずはコードを載せます。 main = do print $ hanoi 3 "a" "b" "c" -- [&qu […]
Yesodでコマンドライン上にログを出力する方法 Yesodでログを出力するには$(logInfo)を使います。 ログはコマンドライン上に表示されます。 getLogR :: Handler Html getLogR = do $(logInfo) "ログです ..." defaultLayout $ [whamlet|<p>logを出力しました ...|] 使い方 […]
Jsonを返すリソース まずは適当なjsonを返すように定義してみます。 getJsonR :: Handler Value getJsonR = jsonToRepJson $ object ["data" .= ("val" :: Text)] 型を Handler Value とします。 jsonToRepJsonでobjectで作ったデータをJsonとして返している… みたいな […]
Viewからの読込 YesodでCSS/Javascripを使用する場合、Shakespearean TemplatesのCassius(CSS) / Lucius(CSS) / Julius(Javascript) を使うことができます。ただし通常のjavascriptファイルやcssファイルを読み込んで使用したい場合は、StaticRを使ってパスを指定できます。 今回は次のjavascript […]