2008-06-01から1ヶ月間の記事一覧

Haskellとglobal

こちらhttp://www.haskell.org/haskellwiki/Research_papers/Functional_pearls で"Global Variables in Haskell"という論文を発見…しかし、functional pearlsは色々とためになるものがあります…そういえば、大域変数はHaskellでは大変だったのか?まぁ、定…

Programming Windows in Haskell、次の一歩がなかなかでない。

以前に簡単な説明とともにWin32でウィンドウを表示するアプリのソースを載せたわけなんですが、実はそのソースのことで書きたいことがあったのです。ちゃんとウィンドウを表示してメッセージを描画するところまではちゃんとできて、さらに、細かいところを見…

ArrowLoopとCircularPrograming

こうゆう問題を考えて見ましょう。数字の入ったリストがある。そのリストの各要素をそのリストの最小値で引いた値を返す関数decWithMinを書け。つまり、decWithMin [5, 10, 20, 4, 3, 100] => [2, 7, 17, 1, 0, 97]そんなの簡単じゃんと: decWithMin ls = m…

Arrowのことその3

前回までArrowの概要をザーッと流したわけなんですが、取りこぼしたことをいくつか…ArrowはWrappedArrow経由でApplicativeとFunctorのインスタンスになっているようです。まぁ、関数(->)自身がApplicativeやFunctorのインスタンスなので、関数をくるんだArro…

Arrowのこと、その2

前回のポストに引き続き、Arrowを攻略していきたいと思います。もう一度、Arrowのクラス定義を引っ張ってきます。 class Arrow a where arr :: (b -> c) -> a b c pure :: (b -> c) -> a b c (>>>) :: a b c -> a c d -> a b d first :: a b c -> a (b, d) (…

Arowのこと

Haskellを勉強し始めて、モナドのことを知ってちょっとしたころに名前だけ見かけて、実際どんなものなのかを知りたいと思っていたのがArrowです。こちらhttp://www.haskell.org/arrows/で見つけられるような説明を読んだりしたのですが、もう、半年ぐらいち…

Functorをちゃんと見ておく

先日はMonoidとFunctorのことで玉砕してしまいました。色々教えていただいたので、ここらが攻め時ということで、もう一押しです。Monad, Monoid, Functor, Applicativeなどを見ていていつもこんがらがっちゃうのが、それらが一体何のサブクラスなのかという…