読者です 読者をやめる 読者になる 読者になる

taketoncheir.log

Like the Decatoncheir by Poseidon Industrial, This blog is Yet Another Storage for My Long Term Memories.

E. Kmettさんに圏論学習の教材を聞いてみた

先週末、ekmett勉強会なる会が開かれました。 (発起人の@tanakhさん、ありがとうございます!) ekmett勉強会 (partake) ekmettとは、HaskellやScalaにて重要なlibrary群を、ありえないスピードで作り上げていくEdward Kmmetさんのことです。 ekmett (githu…

Data.AesonのJSONパースをデバッグする

Haskell製のWebフレームワーク、ScottyとAngularJSを使ってアプリを作っています。 MagpieJSONのパース周りで割とはまったので、そのデバッグ過程をメモしておきます。Model周辺のみを抜き出したテストプロジェクトを用意したので参照してください。 デバッ…

Scotty、起動

軽くWebアプリ作ろうと思い、Scottyに触れてみることにしました。Scotty (github) 使用環境 MacOS 10.6.8 Haskell-platform2012.4.0.0 Scotty 0.4.6 cabal-dev 0.9.1, cabal 1.14.0 起動まで とりあえずソースコードをclone。 $ git clone git://github.com/…

QuickCheckのコード読んでみた

QuickCheckでtestデータがgenerateされる仕組み 実際に定義したデータ型に対してデータを生成する方法はこちら ここではQuickCheckのソースコードについて記します。 実際に読み取った順に書いているので分かりにくいです、すいませんm(__)m 登場人物 class …

QuickCheckでデータ型に対するテストを書く

QuickCheckで自分で定義したデータ型のテストを書く QuickCheckです。 QuickCheckはIntやStringについてデータを生成はしてくれますが、自分で定義したデータ型についてはそのままでは生成してくれません。 データ型に対してArbitraryのinstanceを定義すれば…

QuickCheckテストの信頼度チェック

この記事はHaskell Advent Calendar 2012用の記事です。今年はテストに関わる記事が多いように思います。 継続的な開発を行う上でテストは必要なので、テスト手法をキャッチアップしたいと思っていたところでした。まるで渡りに船、いや、ほむらにまどかです…

Yesodでjsライブラリ使いたい時のファイル配置

Yesodで.jsや.cssを配置したい時。 基本は、staticフォルダ以下のjsやcssフォルダの中にファイルを配置します。 defaultで読み込みしたい場合は、templates/default-layout-wrapper.hamletに以下のように記述します。static/js/angular.jsを読み込みたい時 <script type="text/javascript" src=@{StaticR js_angular_js}/> …

YesodでJSON

YesodでJSON投げたり受けたり Yesod1.1でJSON使う際のメモ書いときます。 これ出来ればサーバサイドだけYesodを使うということも可能です。とりあえず全コードはこちら(github) データ定義 まずはデータ定義から。 Todo json text Text done Text config/mod…

Yesod1.1のLogging

Yesod1.1のLogging MonadLogger @rf0444と、Yesodのログ周りを見てました。 参考にしたのは、SnoymanさんのエントリーYesod's new logging system。とりあえず、Yesod1.1で。 getHomeR = do $(logInfo) "That's it!!" -- Infoレベルでログ defaultLayout $ d…

Yesod1.1 on Heroku

YesodアプリをHerokuにdeployする 2012年8月13日23時17分、HerokuにYesodアプリをdeployすることに成功しました。 作業において、@thimuraさんのブログとこちらの記事を参考にしました。 今回の作業内容をメモっておきます。 今回のレシピ Ubuntu10.04LTS-64…