Just $ A sandbox

プログラミングと計算機科学とかわいさ

Haskell

Yes, Yesod!

abstract: this article shows how to install and run Yesod, a famous Haskell web framework for its simplicity to use and its difficulty to install. I wrote how I did it for whoever wants to install Yesod, and for myself. Yesodのインストール…

Free Monadを使ってみよう!(2)

前回の記事について 前回の記事では、Free MonadをFunctorの延長として捉え、Monad的な使い方ではなくFunctor的な使い方を中心にFree Monadについて見て見ました。 さて、上の記事は実際のところ、まだFree Monadの便利さの片面しか見えていないと言わざるを…

Lensで行こう!(2):Isoへの拡張

このエントリーはLensで行こう! - みょんさんの。の続編にあたります。 前回の復習 前回、Lens型について詳しく見ました。 Lens型は以下のような型のデータです。 type Lens s t a b = forall f. Functor f => (a -> f b) -> s -> f t これはFuctorを上手く…

Lensで行こう!

続編:Lensで行こう!(2):Isoへの拡張 - みょんさんの。 Lensとは Lens(http://hackage.haskell.org/package/lens-3.7.1.2)というパッケージがあります。 非常に大きなパッケージで、中には非常に便利な函数群がたくさん揃っています。私が調べた限りでは、 …

Free Monadを使ってみよう!

続編:Free Monadを使ってみよう!(2) - みょんさんの。Haskell楽しいです。 Haskellは純粋なのでとても大好きです。 ただ、Haskellでは副作用のあるように見える(手続きっぽい)書き方をしたくなる時がどうしてもありますので、そういうところでは手続きっぽ…

1.Haskellで遺伝的プログラミング[ファイル入出力]

Haskellで遺伝的プログラムとか大仰なことを言いましたが私自身まだHaskellを使い始めたばかりで、初歩的な型エラーに何時間も悩むレベルです。 なので、まぁゆっくり少しずつ、悩みながら作っていきたいと思います(つまり遅いということです)。 ファイル入…

0.Haskellで遺伝的プログラミング

Haskellで遺伝的プログラミングを組んでみることにしました。 そもそも「論理式は解の個数と判定時間が性質を与えているに違いない!*1」「プログラム的な手法(つまりはアルゴリズム)は多くの場合は限定論理式で書けるのではないか」「ではプログラムは自己…