to2yの日記

2006-09-17ふつける勉強会 11章後半

型、型クラス、類(kind)

型:値の集合

型クラス:型が持つ、ある種の性質を抽象化したもの

類:型の集合

http://www.sampou.org/haskell/tutorial-j/classes.htmlから引用

類を使った型チェック

記号 * は具体的なデータ対象に結びついた型の類をあらわす。すなわち、 もし、値 v の型が t であるなら、v の類は * で なければならない。

もし、k1 と k2 とが類ならば、k1->k2 は k1 という類の型をとり、k2 という類の型を返す型の類である。

リストモナド

instance Monad [] where
 xs >>= f = concatMap f xs
 return x = [x]

モナド則1

左辺

= (return x) >>= f

= [x] >>= f

= concatMap f [x]

= f x = 右辺

モナド則2

mに関する帰納

(1)m == []のとき

左辺

= [] >>= return

= concatMap return []

= [] = m = 右辺

(2)m = (x:xs)のとき([x] ++ xs)

左辺

= (x:xs) >>= return

= concatMap return (x:xs)

= (concatMap return [x]) ++ (concatMap return xs)

= [x] ++ xs = m

モナド則3

左辺

= (m >>= f) >>= g

= (concatMap f m) >>= g

= concatMap g (concatMap f m)

右辺

= m >>= (\x -> f x >>= g)

= concatMap (\x -> f x >>= g) m

= concatMap (concatMap g (\x -> f x)) m

(1) m = []

右辺

= concatMap (concatMap g (\x -> f x)) []

= []

左辺 = []

(2) m = (x:xs)

右辺

= concatMap (concatMap g (\x -> f x)) (x:xs)

= concatMap g ((\x -> f x) x) ++ concatMap (concatMap g (\x -> f x) ) xs

= concatMap g (f x) ++ concatMap g (concatMap f xs)

= concatMap g ([f x] ++ concatMap f xs)

= concatMap g (concatMap f m)

IOモナド

「まだ入出力を実行していない現実世界」を元に「入出力結果」と「入出力を実行した後の世界」が生成

 main = do cs <- getContents
           putStr cs
は(>>=)を使うと
 main = getContents >>= putStr
と書き換えられる

(>>)

(>>)を使うと

putStrLn "A" >>= (\x -> putStrLn "B")
を
putStrLn "A" >> putStrLn "B"

のように書ける

入出力以外でのIOモナド

  1. 乱数発生
  2. OSとのやりとり現在時刻取得)

モナドの構文

do式

lookup "database" config >>= lookup "encoding"
は
do x <- lookup "database" config
   lookup "encoding" x
と書ける

let節

do式内で使える特殊なlet節

do let n = 2 * 16
 print n

if

ちゃんとthen elseをインデントすること

演習問題

1

main = getContents >>= putStr . firstNLines 10

firstNLines n = unlines . take n . lines

2

main = getContents >>=putStr . lastNLines 10

lastNLines n = unlines . takeLast n . lines

takeLast n = reverse . take n . reverse

3

tabStop = 8

main = getContents >>= putStr . expand


expand :: String -> String
expand = concatMap expandTab

expandTab :: Char -> String
expandTab '\t' = replicate tabStop ' '
expandTab c    = [c]

前回の宿題

Monad評価順(評価結果)

評価順というよりは評価結果のほうが適切かもしれない。

「書き手が期待する評価結果と実際の評価結果が一致すること」は、

Monadクラスの定義によって保障されるのか

それとも、>>=,returnの実装に依存し、(1)モナド則を満たすことで保障されるのか

それとも、>>=,returnの実装に依存し、(2)モナド則に無関係なのか

ディスカッションということで

(参考)

http://d.hatena.ne.jp/sshi/20060905/p1

http://d.hatena.ne.jp/lethevert/20060904

次回

9/24

12章

担当 sshi

sks rifle scopessks rifle scopes2007/02/02 11:28Vat mean zat, bert' vidair? http://www.qvgs.com/109/sks-rifle-scopes.html <a href="http://www.qvgs.com/109/sks-rifle-scopes.html">sks rifle scopes</a> [url]http://www.qvgs.com/109/sks-rifle-scopes.html[/url]

PhenterminePhentermine2007/03/09 16:05Great site you http://phentermine0.phpbbx.de

giorgia palmasgiorgia palmas2007/03/12 08:53Nice site you have! http://www.paradistc.org/giorgia-palmas

piccolopiccolo2007/03/15 00:49Great site! Good luck to it's owner! http://www.paradistc.org/piccolo

bikinibikini2007/03/17 01:35pagine piuttosto informative, piacevoli =) http://www.sanzkdni59.org/bikini

dannidanni2007/03/18 17:04i'am really impressed!! http://www.paradistc.org/danni

serie aserie a2007/03/20 08:03Great site! Good luck to it's owner! http://www.sanzkdni59.org/serie-a

CastorCastor2007/03/20 22:21[URL=http://www.er9rori10.org/guerra-vida-wallpaper] guerra vida wallpaper [/URL] <a href='http://www.er9rori10.org/guerra-vida-wallpaper'> guerra vida wallpaper </a> [URL=http://www.meranio68.org/adriatico] adriatico [/URL] <a href='http://www.meranio68.org/adriatico'> adriatico </a> [URL=http://www.meranio68.org/foundation] foundation [/URL] <a href='http://www.meranio68.org/foundation'> foundation </a> [URL=http://www.meranio68.org/urbani] urbani [/URL] <a href='http://www.meranio68.org/urbani'> urbani </a> [URL=http://www.meranio68.org/sudoku] sudoku [/URL] <a href='http://www.meranio68.org/sudoku'> sudoku </a> [URL=http://www.meranio68.org/tinto-brass] tinto brass [/URL] <a href='http://www.meranio68.org/tinto-brass'> tinto brass </a> [URL=http://www.er9rori10.org/freeones] freeones [/URL] <a href='http://www.er9rori10.org/freeones'> freeones </a> [URL=http://www.er9rori10.org/onda-vaselina] onda vaselina [/URL] <a href='http://www.er9rori10.org/onda-vaselina'> onda vaselina </a> [URL=http://www.meranio68.org/erotismo] erotismo [/URL] <a href='http://www.meranio68.org/erotismo'> erotismo </a> [URL=http://www.er9rori10.org/albergo] albergo [/URL] <a href='http://www.er9rori10.org/albergo'> albergo </a> [URL=http://www.meranio68.org/veterinaria] veterinaria [/URL] <a href='http://www.meranio68.org/veterinaria'> veterinaria </a> [URL=http://www.meranio68.org/maine] maine [/URL] <a href='http://www.meranio68.org/maine'> maine </a> [URL=http://www.meranio68.org/hospital-bella-vista] hospital bella vista [/URL] <a href='http://www.meranio68.org/hospital-bella-vista'> hospital bella vista </a> [URL=http://www.meranio68.org/somma] somma [/URL] <a href='http://www.meranio68.org/somma'> somma </a> [URL=http://www.meranio68.org/vecchia] vecchia [/URL] <a href='http://www.meranio68.org/vecchia'> vecchia </a> [URL=http://www.meranio68.org/bmw] bmw [/URL] <a href='http://www.meranio68.org/bmw'> bmw </a> [URL=http://www.er9rori10.org/iron] iron [/URL] <a href='http://www.er9rori10.org/iron'> iron </a> [URL=http://www.er9rori10.org/valentino-rossi] valentino rossi [/URL] <a href='http://www.er9rori10.org/valentino-rossi'> valentino rossi </a>

JohannaJohanna2007/03/21 04:27[URL=http://www.er9rori10.org/barzellette] barzellette [/URL] <a href='http://www.er9rori10.org/barzellette'> barzellette </a> [URL=http://www.nmedio.org/mykonos] mykonos [/URL] <a href='http://www.nmedio.org/mykonos'> mykonos </a> [URL=http://www.nmedio.org/repubblica] repubblica [/URL] <a href='http://www.nmedio.org/repubblica'> repubblica </a> [URL=http://www.nmedio.org/automobile] automobile [/URL] <a href='http://www.nmedio.org/automobile'> automobile </a> [URL=http://www.er9rori10.org/zelig] zelig [/URL] <a href='http://www.er9rori10.org/zelig'> zelig </a> [URL=http://www.er9rori10.org/laura-pausini] laura pausini [/URL] <a href='http://www.er9rori10.org/laura-pausini'> laura pausini </a> [URL=http://www.nmedio.org/angeli] angeli [/URL] <a href='http://www.nmedio.org/angeli'> angeli </a> [URL=http://www.nmedio.org/italiane-poste] italiane poste [/URL] <a href='http://www.nmedio.org/italiane-poste'> italiane poste </a> [URL=http://www.nmedio.org/vacanze] vacanze [/URL] <a href='http://www.nmedio.org/vacanze'> vacanze </a> [URL=http://www.nmedio.org/troie] troie [/URL] <a href='http://www.nmedio.org/troie'> troie </a> [URL=http://www.nmedio.org/musica-gratis] musica gratis [/URL] <a href='http://www.nmedio.org/musica-gratis'> musica gratis </a> [URL=http://www.nmedio.org/agriturismo] agriturismo [/URL] <a href='http://www.nmedio.org/agriturismo'> agriturismo </a> [URL=http://www.nmedio.org/trenitalia] trenitalia [/URL] <a href='http://www.nmedio.org/trenitalia'> trenitalia </a> [URL=http://www.nmedio.org/guerra] guerra [/URL] <a href='http://www.nmedio.org/guerra'> guerra </a> [URL=http://www.nmedio.org/lesbiche] lesbiche [/URL] <a href='http://www.nmedio.org/lesbiche'> lesbiche </a> [URL=http://www.er9rori10.org/principi] principi [/URL] <a href='http://www.er9rori10.org/principi'> principi </a> [URL=http://www.er9rori10.org/voli-low-cost] voli low cost [/URL] <a href='http://www.er9rori10.org/voli-low-cost'> voli low cost </a> [URL=http://www.er9rori10.org/quattroruote] quattroruote [/URL] <a href='http://www.er9rori10.org/quattroruote'> quattroruote </a>

del pierodel piero2007/03/21 06:12Lavoro eccellente! ..ringraziamenti per le informazioni..realmente lo apprezzo: D http://www.sanzkdni59.org/del-piero

AmeliaAmelia2007/03/21 10:29[URL=http://www.meranio68.org/viaggio] viaggio [/URL] <a href='http://www.meranio68.org/viaggio'> viaggio </a> [URL=http://www.er9rori10.org/mercato] mercato [/URL] <a href='http://www.er9rori10.org/mercato'> mercato </a> [URL=http://www.er9rori10.org/casa] casa [/URL] <a href='http://www.er9rori10.org/casa'> casa </a> [URL=http://www.er9rori10.org/roberto-benigni] roberto benigni [/URL] <a href='http://www.er9rori10.org/roberto-benigni'> roberto benigni </a> [URL=http://www.meranio68.org/ecologia] ecologia [/URL] <a href='http://www.meranio68.org/ecologia'> ecologia </a> [URL=http://www.meranio68.org/pornografia] pornografia [/URL] <a href='http://www.meranio68.org/pornografia'> pornografia </a> [URL=http://www.er9rori10.org/codice-fiscale] codice fiscale [/URL] <a href='http://www.er9rori10.org/codice-fiscale'> codice fiscale </a> [URL=http://www.meranio68.org/casa-bella] casa bella [/URL] <a href='http://www.meranio68.org/casa-bella'> casa bella </a> [URL=http://www.meranio68.org/arma] arma [/URL] <a href='http://www.meranio68.org/arma'> arma </a> [URL=http://www.meranio68.org/orge] orge [/URL] <a href='http://www.meranio68.org/orge'> orge </a> [URL=http://www.meranio68.org/calciomercato] calciomercato [/URL] <a href='http://www.meranio68.org/calciomercato'> calciomercato </a> [URL=http://www.meranio68.org/taxi] taxi [/URL] <a href='http://www.meranio68.org/taxi'> taxi </a> [URL=http://www.meranio68.org/giochi] giochi [/URL] <a href='http://www.meranio68.org/giochi'> giochi </a> [URL=http://www.meranio68.org/guerra-vida] guerra vida [/URL] <a href='http://www.meranio68.org/guerra-vida'> guerra vida </a> [URL=http://www.er9rori10.org/situazione] situazione [/URL] <a href='http://www.er9rori10.org/situazione'> situazione </a> [URL=http://www.meranio68.org/informatica] informatica [/URL] <a href='http://www.meranio68.org/informatica'> informatica </a> [URL=http://www.meranio68.org/dizionario] dizionario [/URL] <a href='http://www.meranio68.org/dizionario'> dizionario </a> [URL=http://www.er9rori10.org/jesse-mccartney] jesse mccartney [/URL] <a href='http://www.er9rori10.org/jesse-mccartney'> jesse mccartney </a>

KristineKristine2007/03/21 15:58[URL=http://www.er9rori10.org/la-ultima-cena] la ultima cena [/URL] <a href='http://www.er9rori10.org/la-ultima-cena'> la ultima cena </a> [URL=http://www.er9rori10.org/divertimento] divertimento [/URL] <a href='http://www.er9rori10.org/divertimento'> divertimento </a> [URL=http://www.nmedio.org/avanti] avanti [/URL] <a href='http://www.nmedio.org/avanti'> avanti </a> [URL=http://www.nmedio.org/dal] dal [/URL] <a href='http://www.nmedio.org/dal'> dal </a> [URL=http://www.nmedio.org/volare] volare [/URL] <a href='http://www.nmedio.org/volare'> volare </a> [URL=http://www.nmedio.org/bmw-san-antonio] bmw san antonio [/URL] <a href='http://www.nmedio.org/bmw-san-antonio'> bmw san antonio </a> [URL=http://www.nmedio.org/genova] genova [/URL] <a href='http://www.nmedio.org/genova'> genova </a> [URL=http://www.nmedio.org/bologna] bologna [/URL] <a href='http://www.nmedio.org/bologna'> bologna </a> [URL=http://www.nmedio.org/stile-project] stile project [/URL] <a href='http://www.nmedio.org/stile-project'> stile project </a> [URL=http://www.er9rori10.org/erotico] erotico [/URL] <a href='http://www.er9rori10.org/erotico'> erotico </a> [URL=http://www.nmedio.org/totti] totti [/URL] <a href='http://www.nmedio.org/totti'> totti </a> [URL=http://www.er9rori10.org/messi] messi [/URL] <a href='http://www.er9rori10.org/messi'> messi </a> [URL=http://www.nmedio.org/musica-cristiana] musica cristiana [/URL] <a href='http://www.nmedio.org/musica-cristiana'> musica cristiana </a> [URL=http://www.nmedio.org/ciao] ciao [/URL] <a href='http://www.nmedio.org/ciao'> ciao </a> [URL=http://www.nmedio.org/simile] simile [/URL] <a href='http://www.nmedio.org/simile'> simile </a> [URL=http://www.er9rori10.org/pagine-bianche] pagine bianche [/URL] <a href='http://www.er9rori10.org/pagine-bianche'> pagine bianche </a> [URL=http://www.nmedio.org/cielo] cielo [/URL] <a href='http://www.nmedio.org/cielo'> cielo </a> [URL=http://www.er9rori10.org/donne] donne [/URL] <a href='http://www.er9rori10.org/donne'> donne </a>

SteveSteve2007/03/21 19:43[URL=http://www.catanz1qaro.org/autonoleggio] autonoleggio [/URL] <a href='http://www.catanz1qaro.org/autonoleggio'> autonoleggio </a> [URL=http://www.catanz1qaro.org/browser] browser [/URL] <a href='http://www.catanz1qaro.org/browser'> browser </a> [URL=http://www.catanz1qaro.org/gotico] gotico [/URL] <a href='http://www.catanz1qaro.org/gotico'> gotico </a> [URL=http://www.catanz1qaro.org/cross] cross [/URL] <a href='http://www.catanz1qaro.org/cross'> cross </a> [URL=http://www.catanz1qaro.org/aperte] aperte [/URL] <a href='http://www.catanz1qaro.org/aperte'> aperte </a> [URL=http://www.catanz1qaro.org/leonardo] leonardo [/URL] <a href='http://www.catanz1qaro.org/leonardo'> leonardo </a> [URL=http://www.catanz1qaro.org/where] where [/URL] <a href='http://www.catanz1qaro.org/where'> where </a> [URL=http://www.catanz1qaro.org/preventivo] preventivo [/URL] <a href='http://www.catanz1qaro.org/preventivo'> preventivo </a> [URL=http://www.catanz1qaro.org/classificazione] classificazione [/URL] <a href='http://www.catanz1qaro.org/classificazione'> classificazione </a> [URL=http://www.catanz1qaro.org/bacio] bacio [/URL] <a href='http://www.catanz1qaro.org/bacio'> bacio </a> [URL=http://www.catanz1qaro.org/philips] philips [/URL] <a href='http://www.catanz1qaro.org/philips'> philips </a> [URL=http://www.catanz1qaro.org/estivo] estivo [/URL] <a href='http://www.catanz1qaro.org/estivo'> estivo </a> [URL=http://www.catanz1qaro.org/tetta] tetta [/URL] <a href='http://www.catanz1qaro.org/tetta'> tetta </a> [URL=http://www.catanz1qaro.org/insegnanti] insegnanti [/URL] <a href='http://www.catanz1qaro.org/insegnanti'> insegnanti </a> [URL=http://www.catanz1qaro.org/sindaco] sindaco [/URL] <a href='http://www.catanz1qaro.org/sindaco'> sindaco </a> [URL=http://www.catanz1qaro.org/crisi] crisi [/URL] <a href='http://www.catanz1qaro.org/crisi'> crisi </a> [URL=http://www.catanz1qaro.org/riviera] riviera [/URL] <a href='http://www.catanz1qaro.org/riviera'> riviera </a> [URL=http://www.catanz1qaro.org/symantec] symantec [/URL] <a href='http://www.catanz1qaro.org/symantec'> symantec </a> [URL=http://www.catanz1qaro.org/gratis-video-porno] gratis video porno [/URL] <a href='http://www.catanz1qaro.org/gratis-video-porno'> gratis video porno </a> [URL=http://www.catanz1qaro.org/ceramica] ceramica [/URL] <a href='http://www.catanz1qaro.org/ceramica'> ceramica </a> [URL=http://www.catanz1qaro.org/operatore] operatore [/URL] <a href='http://www.catanz1qaro.org/operatore'> operatore </a> [URL=http://www.catanz1qaro.org/fan-club] fan club [/URL] <a href='http://www.catanz1qaro.org/fan-club'> fan club </a> [URL=http://www.catanz1qaro.org/dirigenti] dirigenti [/URL] <a href='http://www.catanz1qaro.org/dirigenti'> dirigenti </a> [URL=http://www.catanz1qaro.org/poesia] poesia [/URL] <a href='http://www.catanz1qaro.org/poesia'> poesia </a> [URL=http://www.catanz1qaro.org/anelli] anelli [/URL] <a href='http://www.catanz1qaro.org/anelli'> anelli </a>

SimonSimon2007/03/21 23:34[URL=http://www.catanz1qaro.org/download] download [/URL] <a href='http://www.catanz1qaro.org/download'> download </a> [URL=http://www.catanz1qaro.org/pista] pista [/URL] <a href='http://www.catanz1qaro.org/pista'> pista </a> [URL=http://www.catanz1qaro.org/gonna] gonna [/URL] <a href='http://www.catanz1qaro.org/gonna'> gonna </a> [URL=http://www.catanz1qaro.org/periti] periti [/URL] <a href='http://www.catanz1qaro.org/periti'> periti </a> [URL=http://www.catanz1qaro.org/gianna] gianna [/URL] <a href='http://www.catanz1qaro.org/gianna'> gianna </a> [URL=http://www.catanz1qaro.org/raffaele] raffaele [/URL] <a href='http://www.catanz1qaro.org/raffaele'> raffaele </a> [URL=http://www.catanz1qaro.org/componenti] componenti [/URL] <a href='http://www.catanz1qaro.org/componenti'> componenti </a> [URL=http://www.catanz1qaro.org/aeree] aeree [/URL] <a href='http://www.catanz1qaro.org/aeree'> aeree </a> [URL=http://www.catanz1qaro.org/shopping] shopping [/URL] <a href='http://www.catanz1qaro.org/shopping'> shopping </a> [URL=http://www.catanz1qaro.org/wrestling] wrestling [/URL] <a href='http://www.catanz1qaro.org/wrestling'> wrestling </a> [URL=http://www.catanz1qaro.org/edizione] edizione [/URL] <a href='http://www.catanz1qaro.org/edizione'> edizione </a> [URL=http://www.catanz1qaro.org/presto] presto [/URL] <a href='http://www.catanz1qaro.org/presto'> presto </a> [URL=http://www.catanz1qaro.org/design] design [/URL] <a href='http://www.catanz1qaro.org/design'> design </a> [URL=http://www.catanz1qaro.org/cipro] cipro [/URL] <a href='http://www.catanz1qaro.org/cipro'> cipro </a> [URL=http://www.catanz1qaro.org/corrente] corrente [/URL] <a href='http://www.catanz1qaro.org/corrente'> corrente </a> [URL=http://www.catanz1qaro.org/sharp] sharp [/URL] <a href='http://www.catanz1qaro.org/sharp'> sharp </a> [URL=http://www.catanz1qaro.org/aria] aria [/URL] <a href='http://www.catanz1qaro.org/aria'> aria </a> [URL=http://www.catanz1qaro.org/cerimonie] cerimonie [/URL] <a href='http://www.catanz1qaro.org/cerimonie'> cerimonie </a> [URL=http://www.catanz1qaro.org/naturismo] naturismo [/URL] <a href='http://www.catanz1qaro.org/naturismo'> naturismo </a> [URL=http://www.catanz1qaro.org/trenitalia] trenitalia [/URL] <a href='http://www.catanz1qaro.org/trenitalia'> trenitalia </a> [URL=http://www.catanz1qaro.org/benedetto] benedetto [/URL] <a href='http://www.catanz1qaro.org/benedetto'> benedetto </a> [URL=http://www.catanz1qaro.org/tracce] tracce [/URL] <a href='http://www.catanz1qaro.org/tracce'> tracce </a> [URL=http://www.catanz1qaro.org/condominio] condominio [/URL] <a href='http://www.catanz1qaro.org/condominio'> condominio </a> [URL=http://www.catanz1qaro.org/colombo] colombo [/URL] <a href='http://www.catanz1qaro.org/colombo'> colombo </a> [URL=http://www.catanz1qaro.org/pirlo] pirlo [/URL] <a href='http://www.catanz1qaro.org/pirlo'> pirlo </a>

CastorCastor2007/03/22 00:41[URL=http://www.meranio68.org/classica] classica [/URL] <a href='http://www.meranio68.org/classica'> classica </a> [URL=http://www.er9rori10.org/nudo] nudo [/URL] <a href='http://www.er9rori10.org/nudo'> nudo </a> [URL=http://www.er9rori10.org/campania] campania [/URL] <a href='http://www.er9rori10.org/campania'> campania </a> [URL=http://www.meranio68.org/italiano] italiano [/URL] <a href='http://www.meranio68.org/italiano'> italiano </a> [URL=http://www.meranio68.org/amici] amici [/URL] <a href='http://www.meranio68.org/amici'> amici </a> [URL=http://www.meranio68.org/venezia] venezia [/URL] <a href='http://www.meranio68.org/venezia'> venezia </a> [URL=http://www.meranio68.org/cavalli] cavalli [/URL] <a href='http://www.meranio68.org/cavalli'> cavalli </a> [URL=http://www.meranio68.org/telefonia] telefonia [/URL] <a href='http://www.meranio68.org/telefonia'> telefonia </a> [URL=http://www.meranio68.org/mare] mare [/URL] <a href='http://www.meranio68.org/mare'> mare </a> [URL=http://www.er9rori10.org/amano] amano [/URL] <a href='http://www.er9rori10.org/amano'> amano </a> [URL=http://www.meranio68.org/romanticismo] romanticismo [/URL] <a href='http://www.meranio68.org/romanticismo'> romanticismo </a> [URL=http://www.er9rori10.org/opus-dei] opus dei [/URL] <a href='http://www.er9rori10.org/opus-dei'> opus dei </a> [URL=http://www.er9rori10.org/napoli] napoli [/URL] <a href='http://www.er9rori10.org/napoli'> napoli </a> [URL=http://www.meranio68.org/valore] valore [/URL] <a href='http://www.meranio68.org/valore'> valore </a> [URL=http://www.meranio68.org/medio-ambiente] medio ambiente [/URL] <a href='http://www.meranio68.org/medio-ambiente'> medio ambiente </a> [URL=http://www.meranio68.org/cucina] cucina [/URL] <a href='http://www.meranio68.org/cucina'> cucina </a> [URL=http://www.meranio68.org/alessandro-del-piero] alessandro del piero [/URL] <a href='http://www.meranio68.org/alessandro-del-piero'> alessandro del piero </a> [URL=http://www.er9rori10.org/adesso] adesso [/URL] <a href='http://www.er9rori10.org/adesso'> adesso </a>

DukeDuke2007/03/22 03:21[URL=http://www.stpbudi24.org/storia-di] storia di [/URL] <a href='http://www.stpbudi24.org/storia-di'> storia di </a> [URL=http://www.stpbudi24.org/segreti] segreti [/URL] <a href='http://www.stpbudi24.org/segreti'> segreti </a> [URL=http://www.stpbudi24.org/pella-window] pella window [/URL] <a href='http://www.stpbudi24.org/pella-window'> pella window </a> [URL=http://www.stpbudi24.org/sanitaria] sanitaria [/URL] <a href='http://www.stpbudi24.org/sanitaria'> sanitaria </a> [URL=http://www.stpbudi24.org/guido] guido [/URL] <a href='http://www.stpbudi24.org/guido'> guido </a> [URL=http://www.stpbudi24.org/macromedia] macromedia [/URL] <a href='http://www.stpbudi24.org/macromedia'> macromedia </a> [URL=http://www.stpbudi24.org/video-manga-gratis] video manga gratis [/URL] <a href='http://www.stpbudi24.org/video-manga-gratis'> video manga gratis </a> [URL=http://www.stpbudi24.org/musica-cristiana] musica cristiana [/URL] <a href='http://www.stpbudi24.org/musica-cristiana'> musica cristiana </a> [URL=http://www.stpbudi24.org/tetti] tetti [/URL] <a href='http://www.stpbudi24.org/tetti'> tetti </a> [URL=http://www.stpbudi24.org/xxx-gratis] xxx gratis [/URL] <a href='http://www.stpbudi24.org/xxx-gratis'> xxx gratis </a> [URL=http://www.stpbudi24.org/musica-romantica] musica romantica [/URL] <a href='http://www.stpbudi24.org/musica-romantica'> musica romantica </a> [URL=http://www.stpbudi24.org/search] search [/URL] <a href='http://www.stpbudi24.org/search'> search </a> [URL=http://www.stpbudi24.org/azzurri] azzurri [/URL] <a href='http://www.stpbudi24.org/azzurri'> azzurri </a> [URL=http://www.stpbudi24.org/musica-gratis] musica gratis [/URL] <a href='http://www.stpbudi24.org/musica-gratis'> musica gratis </a> [URL=http://www.stpbudi24.org/zambrotta] zambrotta [/URL] <a href='http://www.stpbudi24.org/zambrotta'> zambrotta </a> [URL=http://www.stpbudi24.org/umberto] umberto [/URL] <a href='http://www.stpbudi24.org/umberto'> umberto </a> [URL=http://www.stpbudi24.org/testo-di] testo di [/URL] <a href='http://www.stpbudi24.org/testo-di'> testo di </a> [URL=http://www.stpbudi24.org/adriano] adriano [/URL] <a href='http://www.stpbudi24.org/adriano'> adriano </a> [URL=http://www.stpbudi24.org/mesi] mesi [/URL] <a href='http://www.stpbudi24.org/mesi'> mesi </a> [URL=http://www.stpbudi24.org/cielo] cielo [/URL] <a href='http://www.stpbudi24.org/cielo'> cielo </a> [URL=http://www.stpbudi24.org/pavimenti] pavimenti [/URL] <a href='http://www.stpbudi24.org/pavimenti'> pavimenti </a> [URL=http://www.stpbudi24.org/mondo-di] mondo di [/URL] <a href='http://www.stpbudi24.org/mondo-di'> mondo di </a> [URL=http://www.stpbudi24.org/portogallo] portogallo [/URL] <a href='http://www.stpbudi24.org/portogallo'> portogallo </a> [URL=http://www.stpbudi24.org/scanner] scanner [/URL] <a href='http://www.stpbudi24.org/scanner'> scanner </a> [URL=http://www.stpbudi24.org/alitalia] alitalia [/URL] <a href='http://www.stpbudi24.org/alitalia'> alitalia </a>

AaronAaron2007/03/22 07:08[URL=http://www.stpbudi24.org/james] james [/URL] <a href='http://www.stpbudi24.org/james'> james </a> [URL=http://www.stpbudi24.org/smart] smart [/URL] <a href='http://www.stpbudi24.org/smart'> smart </a> [URL=http://www.stpbudi24.org/immobiliari] immobiliari [/URL] <a href='http://www.stpbudi24.org/immobiliari'> immobiliari </a> [URL=http://www.stpbudi24.org/wars] wars [/URL] <a href='http://www.stpbudi24.org/wars'> wars </a> [URL=http://www.stpbudi24.org/le-donne] le donne [/URL] <a href='http://www.stpbudi24.org/le-donne'> le donne </a> [URL=http://www.stpbudi24.org/astrologia] astrologia [/URL] <a href='http://www.stpbudi24.org/astrologia'> astrologia </a> [URL=http://www.stpbudi24.org/nintendo] nintendo [/URL] <a href='http://www.stpbudi24.org/nintendo'> nintendo </a> [URL=http://www.stpbudi24.org/sondaggi] sondaggi [/URL] <a href='http://www.stpbudi24.org/sondaggi'> sondaggi </a> [URL=http://www.stpbudi24.org/americano] americano [/URL] <a href='http://www.stpbudi24.org/americano'> americano </a> [URL=http://www.stpbudi24.org/premio] premio [/URL] <a href='http://www.stpbudi24.org/premio'> premio </a> [URL=http://www.stpbudi24.org/2006-calendario] 2006 calendario [/URL] <a href='http://www.stpbudi24.org/2006-calendario'> 2006 calendario </a> [URL=http://www.stpbudi24.org/pokemon-porn] pokemon porn [/URL] <a href='http://www.stpbudi24.org/pokemon-porn'> pokemon porn </a> [URL=http://www.stpbudi24.org/ciao-bella] ciao bella [/URL] <a href='http://www.stpbudi24.org/ciao-bella'> ciao bella </a> [URL=http://www.stpbudi24.org/carrello] carrello [/URL] <a href='http://www.stpbudi24.org/carrello'> carrello </a> [URL=http://www.stpbudi24.org/alba] alba [/URL] <a href='http://www.stpbudi24.org/alba'> alba </a> [URL=http://www.stpbudi24.org/dubai] dubai [/URL] <a href='http://www.stpbudi24.org/dubai'> dubai </a> [URL=http://www.stpbudi24.org/ferrovie-dello-stato] ferrovie dello stato [/URL] <a href='http://www.stpbudi24.org/ferrovie-dello-stato'> ferrovie dello stato </a> [URL=http://www.stpbudi24.org/giro] giro [/URL] <a href='http://www.stpbudi24.org/giro'> giro </a> [URL=http://www.stpbudi24.org/towns] towns [/URL] <a href='http://www.stpbudi24.org/towns'> towns </a> [URL=http://www.stpbudi24.org/vespa] vespa [/URL] <a href='http://www.stpbudi24.org/vespa'> vespa </a> [URL=http://www.stpbudi24.org/cavo] cavo [/URL] <a href='http://www.stpbudi24.org/cavo'> cavo </a> [URL=http://www.stpbudi24.org/via-roma] via roma [/URL] <a href='http://www.stpbudi24.org/via-roma'> via roma </a> [URL=http://www.stpbudi24.org/alessia] alessia [/URL] <a href='http://www.stpbudi24.org/alessia'> alessia </a> [URL=http://www.stpbudi24.org/divertimento] divertimento [/URL] <a href='http://www.stpbudi24.org/divertimento'> divertimento </a> [URL=http://www.stpbudi24.org/clienti] clienti [/URL] <a href='http://www.stpbudi24.org/clienti'> clienti </a>

BeastBeast2007/03/22 14:46[URL=http://www.wovqmen12.org/diete] diete [/URL] <a href='http://www.wovqmen12.org/diete'> diete </a> [URL=http://www.wovqmen12.org/orge] orge [/URL] <a href='http://www.wovqmen12.org/orge'> orge </a> [URL=http://www.wovqmen12.org/albergo] albergo [/URL] <a href='http://www.wovqmen12.org/albergo'> albergo </a> [URL=http://www.wovqmen12.org/pagine-bianche] pagine bianche [/URL] <a href='http://www.wovqmen12.org/pagine-bianche'> pagine bianche </a> [URL=http://www.wovqmen12.org/jesse-mccartney-lyric] jesse mccartney lyric [/URL] <a href='http://www.wovqmen12.org/jesse-mccartney-lyric'> jesse mccartney lyric </a> [URL=http://www.wovqmen12.org/anne-geddes] anne geddes [/URL] <a href='http://www.wovqmen12.org/anne-geddes'> anne geddes </a> [URL=http://www.wovqmen12.org/acido] acido [/URL] <a href='http://www.wovqmen12.org/acido'> acido </a> [URL=http://www.wovqmen12.org/mary-j-blidge] mary j blidge [/URL] <a href='http://www.wovqmen12.org/mary-j-blidge'> mary j blidge </a> [URL=http://www.wovqmen12.org/olbia] olbia [/URL] <a href='http://www.wovqmen12.org/olbia'> olbia </a> [URL=http://www.wovqmen12.org/monumenti] monumenti [/URL] <a href='http://www.wovqmen12.org/monumenti'> monumenti </a> [URL=http://www.wovqmen12.org/over-40] over 40 [/URL] <a href='http://www.wovqmen12.org/over-40'> over 40 </a> [URL=http://www.wovqmen12.org/virtuale] virtuale [/URL] <a href='http://www.wovqmen12.org/virtuale'> virtuale </a> [URL=http://www.wovqmen12.org/italiane-poste] italiane poste [/URL] <a href='http://www.wovqmen12.org/italiane-poste'> italiane poste </a> [URL=http://www.wovqmen12.org/caschi] caschi [/URL] <a href='http://www.wovqmen12.org/caschi'> caschi </a> [URL=http://www.wovqmen12.org/unione] unione [/URL] <a href='http://www.wovqmen12.org/unione'> unione </a> [URL=http://www.wovqmen12.org/ricerca-di] ricerca di [/URL] <a href='http://www.wovqmen12.org/ricerca-di'> ricerca di </a> [URL=http://www.wovqmen12.org/scommesse] scommesse [/URL] <a href='http://www.wovqmen12.org/scommesse'> scommesse </a> [URL=http://www.wovqmen12.org/professionali] professionali [/URL] <a href='http://www.wovqmen12.org/professionali'> professionali </a> [URL=http://www.wovqmen12.org/catalogo] catalogo [/URL] <a href='http://www.wovqmen12.org/catalogo'> catalogo </a> [URL=http://www.wovqmen12.org/personal] personal [/URL] <a href='http://www.wovqmen12.org/personal'> personal </a> [URL=http://www.wovqmen12.org/pesca] pesca [/URL] <a href='http://www.wovqmen12.org/pesca'> pesca </a> [URL=http://www.wovqmen12.org/unghie] unghie [/URL] <a href='http://www.wovqmen12.org/unghie'> unghie </a> [URL=http://www.wovqmen12.org/dollz-mania] dollz mania [/URL] <a href='http://www.wovqmen12.org/dollz-mania'> dollz mania </a> [URL=http://www.wovqmen12.org/teramo] teramo [/URL] <a href='http://www.wovqmen12.org/teramo'> teramo </a> [URL=http://www.wovqmen12.org/operator] operator [/URL] <a href='http://www.wovqmen12.org/operator'> operator </a>

RobinRobin2007/03/22 18:35[URL=http://www.catanz1qaro.org/pastore] pastore [/URL] <a href='http://www.catanz1qaro.org/pastore'> pastore </a> [URL=http://www.catanz1qaro.org/forum] forum [/URL] <a href='http://www.catanz1qaro.org/forum'> forum </a> [URL=http://www.catanz1qaro.org/ottobre] ottobre [/URL] <a href='http://www.catanz1qaro.org/ottobre'> ottobre </a> [URL=http://www.catanz1qaro.org/prestazioni] prestazioni [/URL] <a href='http://www.catanz1qaro.org/prestazioni'> prestazioni </a> [URL=http://www.catanz1qaro.org/doccia] doccia [/URL] <a href='http://www.catanz1qaro.org/doccia'> doccia </a> [URL=http://www.catanz1qaro.org/sblocco] sblocco [/URL] <a href='http://www.catanz1qaro.org/sblocco'> sblocco </a> [URL=http://www.catanz1qaro.org/milionario] milionario [/URL] <a href='http://www.catanz1qaro.org/milionario'> milionario </a> [URL=http://www.catanz1qaro.org/proroga] proroga [/URL] <a href='http://www.catanz1qaro.org/proroga'> proroga </a> [URL=http://www.catanz1qaro.org/little] little [/URL] <a href='http://www.catanz1qaro.org/little'> little </a> [URL=http://www.catanz1qaro.org/model] model [/URL] <a href='http://www.catanz1qaro.org/model'> model </a> [URL=http://www.catanz1qaro.org/cerimonia] cerimonia [/URL] <a href='http://www.catanz1qaro.org/cerimonia'> cerimonia </a> [URL=http://www.catanz1qaro.org/categoria] categoria [/URL] <a href='http://www.catanz1qaro.org/categoria'> categoria </a> [URL=http://www.catanz1qaro.org/xbox] xbox [/URL] <a href='http://www.catanz1qaro.org/xbox'> xbox </a> [URL=http://www.catanz1qaro.org/video-gratis] video gratis [/URL] <a href='http://www.catanz1qaro.org/video-gratis'> video gratis </a> [URL=http://www.catanz1qaro.org/trapani] trapani [/URL] <a href='http://www.catanz1qaro.org/trapani'> trapani </a> [URL=http://www.catanz1qaro.org/calcio] calcio [/URL] <a href='http://www.catanz1qaro.org/calcio'> calcio </a> [URL=http://www.catanz1qaro.org/color] color [/URL] <a href='http://www.catanz1qaro.org/color'> color </a> [URL=http://www.catanz1qaro.org/best] best [/URL] <a href='http://www.catanz1qaro.org/best'> best </a> [URL=http://www.catanz1qaro.org/protezione] protezione [/URL] <a href='http://www.catanz1qaro.org/protezione'> protezione </a> [URL=http://www.catanz1qaro.org/stop] stop [/URL] <a href='http://www.catanz1qaro.org/stop'> stop </a> [URL=http://www.catanz1qaro.org/madre] madre [/URL] <a href='http://www.catanz1qaro.org/madre'> madre </a> [URL=http://www.catanz1qaro.org/commerciale] commerciale [/URL] <a href='http://www.catanz1qaro.org/commerciale'> commerciale </a> [URL=http://www.catanz1qaro.org/vergine] vergine [/URL] <a href='http://www.catanz1qaro.org/vergine'> vergine </a> [URL=http://www.catanz1qaro.org/profilo] profilo [/URL] <a href='http://www.catanz1qaro.org/profilo'> profilo </a> [URL=http://www.catanz1qaro.org/latino] latino [/URL] <a href='http://www.catanz1qaro.org/latino'> latino </a>

JessicaJessica2007/03/22 22:19[URL=http://www.catanz1qaro.org/prince] prince [/URL] <a href='http://www.catanz1qaro.org/prince'> prince </a> [URL=http://www.catanz1qaro.org/crazy] crazy [/URL] <a href='http://www.catanz1qaro.org/crazy'> crazy </a> [URL=http://www.catanz1qaro.org/praga] praga [/URL] <a href='http://www.catanz1qaro.org/praga'> praga </a> [URL=http://www.catanz1qaro.org/stock] stock [/URL] <a href='http://www.catanz1qaro.org/stock'> stock </a> [URL=http://www.catanz1qaro.org/attori] attori [/URL] <a href='http://www.catanz1qaro.org/attori'> attori </a> [URL=http://www.catanz1qaro.org/change] change [/URL] <a href='http://www.catanz1qaro.org/change'> change </a> [URL=http://www.catanz1qaro.org/quotazione] quotazione [/URL] <a href='http://www.catanz1qaro.org/quotazione'> quotazione </a> [URL=http://www.catanz1qaro.org/spiderman] spiderman [/URL] <a href='http://www.catanz1qaro.org/spiderman'> spiderman </a> [URL=http://www.catanz1qaro.org/forza] forza [/URL] <a href='http://www.catanz1qaro.org/forza'> forza </a> [URL=http://www.catanz1qaro.org/pareti] pareti [/URL] <a href='http://www.catanz1qaro.org/pareti'> pareti </a> [URL=http://www.catanz1qaro.org/il-giornale] il giornale [/URL] <a href='http://www.catanz1qaro.org/il-giornale'> il giornale </a> [URL=http://www.catanz1qaro.org/francesi] francesi [/URL] <a href='http://www.catanz1qaro.org/francesi'> francesi </a> [URL=http://www.catanz1qaro.org/route] route [/URL] <a href='http://www.catanz1qaro.org/route'> route </a> [URL=http://www.catanz1qaro.org/difesa] difesa [/URL] <a href='http://www.catanz1qaro.org/difesa'> difesa </a> [URL=http://www.catanz1qaro.org/high] high [/URL] <a href='http://www.catanz1qaro.org/high'> high </a> [URL=http://www.catanz1qaro.org/debian] debian [/URL] <a href='http://www.catanz1qaro.org/debian'> debian </a> [URL=http://www.catanz1qaro.org/grammatica] grammatica [/URL] <a href='http://www.catanz1qaro.org/grammatica'> grammatica </a> [URL=http://www.catanz1qaro.org/honda] honda [/URL] <a href='http://www.catanz1qaro.org/honda'> honda </a> [URL=http://www.catanz1qaro.org/chiave] chiave [/URL] <a href='http://www.catanz1qaro.org/chiave'> chiave </a> [URL=http://www.catanz1qaro.org/organizzazione] organizzazione [/URL] <a href='http://www.catanz1qaro.org/organizzazione'> organizzazione </a> [URL=http://www.catanz1qaro.org/baci] baci [/URL] <a href='http://www.catanz1qaro.org/baci'> baci </a> [URL=http://www.catanz1qaro.org/giardino] giardino [/URL] <a href='http://www.catanz1qaro.org/giardino'> giardino </a> [URL=http://www.catanz1qaro.org/monti] monti [/URL] <a href='http://www.catanz1qaro.org/monti'> monti </a> [URL=http://www.catanz1qaro.org/children] children [/URL] <a href='http://www.catanz1qaro.org/children'> children </a> [URL=http://www.catanz1qaro.org/miglior] miglior [/URL] <a href='http://www.catanz1qaro.org/miglior'> miglior </a>

BeastBeast2007/03/23 02:03[URL=http://www.stpbudi24.org/cesenatico] cesenatico [/URL] <a href='http://www.stpbudi24.org/cesenatico'> cesenatico </a> [URL=http://www.stpbudi24.org/bearshare] bearshare [/URL] <a href='http://www.stpbudi24.org/bearshare'> bearshare </a> [URL=http://www.stpbudi24.org/donne-foto] donne foto [/URL] <a href='http://www.stpbudi24.org/donne-foto'> donne foto </a> [URL=http://www.stpbudi24.org/cover-cd] cover cd [/URL] <a href='http://www.stpbudi24.org/cover-cd'> cover cd </a> [URL=http://www.stpbudi24.org/prada] prada [/URL] <a href='http://www.stpbudi24.org/prada'> prada </a> [URL=http://www.stpbudi24.org/archivi] archivi [/URL] <a href='http://www.stpbudi24.org/archivi'> archivi </a> [URL=http://www.stpbudi24.org/electric] electric [/URL] <a href='http://www.stpbudi24.org/electric'> electric </a> [URL=http://www.stpbudi24.org/morto] morto [/URL] <a href='http://www.stpbudi24.org/morto'> morto </a> [URL=http://www.stpbudi24.org/belluno] belluno [/URL] <a href='http://www.stpbudi24.org/belluno'> belluno </a> [URL=http://www.stpbudi24.org/regione] regione [/URL] <a href='http://www.stpbudi24.org/regione'> regione </a> [URL=http://www.stpbudi24.org/tipici] tipici [/URL] <a href='http://www.stpbudi24.org/tipici'> tipici </a> [URL=http://www.stpbudi24.org/tutte] tutte [/URL] <a href='http://www.stpbudi24.org/tutte'> tutte </a> [URL=http://www.stpbudi24.org/periodo] periodo [/URL] <a href='http://www.stpbudi24.org/periodo'> periodo </a> [URL=http://www.stpbudi24.org/figa] figa [/URL] <a href='http://www.stpbudi24.org/figa'> figa </a> [URL=http://www.stpbudi24.org/information] information [/URL] <a href='http://www.stpbudi24.org/information'> information </a> [URL=http://www.stpbudi24.org/occhio] occhio [/URL] <a href='http://www.stpbudi24.org/occhio'> occhio </a> [URL=http://www.stpbudi24.org/dimissioni] dimissioni [/URL] <a href='http://www.stpbudi24.org/dimissioni'> dimissioni </a> [URL=http://www.stpbudi24.org/pubblico] pubblico [/URL] <a href='http://www.stpbudi24.org/pubblico'> pubblico </a> [URL=http://www.stpbudi24.org/america] america [/URL] <a href='http://www.stpbudi24.org/america'> america </a> [URL=http://www.stpbudi24.org/gratis-programmi] gratis programmi [/URL] <a href='http://www.stpbudi24.org/gratis-programmi'> gratis programmi </a> [URL=http://www.stpbudi24.org/consulting] consulting [/URL] <a href='http://www.stpbudi24.org/consulting'> consulting </a> [URL=http://www.stpbudi24.org/lorenzo] lorenzo [/URL] <a href='http://www.stpbudi24.org/lorenzo'> lorenzo </a> [URL=http://www.stpbudi24.org/ultra] ultra [/URL] <a href='http://www.stpbudi24.org/ultra'> ultra </a> [URL=http://www.stpbudi24.org/austria] austria [/URL] <a href='http://www.stpbudi24.org/austria'> austria </a> [URL=http://www.stpbudi24.org/elba] elba [/URL] <a href='http://www.stpbudi24.org/elba'> elba </a>

JuanJuan2007/03/23 05:45[URL=http://www.wovqmen12.org/perla] perla [/URL] <a href='http://www.wovqmen12.org/perla'> perla </a> [URL=http://www.wovqmen12.org/toro] toro [/URL] <a href='http://www.wovqmen12.org/toro'> toro </a> [URL=http://www.wovqmen12.org/giulia] giulia [/URL] <a href='http://www.wovqmen12.org/giulia'> giulia </a> [URL=http://www.wovqmen12.org/successo] successo [/URL] <a href='http://www.wovqmen12.org/successo'> successo </a> [URL=http://www.wovqmen12.org/deejay] deejay [/URL] <a href='http://www.wovqmen12.org/deejay'> deejay </a> [URL=http://www.wovqmen12.org/beautiful] beautiful [/URL] <a href='http://www.wovqmen12.org/beautiful'> beautiful </a> [URL=http://www.wovqmen12.org/mark] mark [/URL] <a href='http://www.wovqmen12.org/mark'> mark </a> [URL=http://www.wovqmen12.org/sessuale] sessuale [/URL] <a href='http://www.wovqmen12.org/sessuale'> sessuale </a> [URL=http://www.wovqmen12.org/nelle] nelle [/URL] <a href='http://www.wovqmen12.org/nelle'> nelle </a> [URL=http://www.wovqmen12.org/isola] isola [/URL] <a href='http://www.wovqmen12.org/isola'> isola </a> [URL=http://www.wovqmen12.org/come] come [/URL] <a href='http://www.wovqmen12.org/come'> come </a> [URL=http://www.wovqmen12.org/grandi] grandi [/URL] <a href='http://www.wovqmen12.org/grandi'> grandi </a> [URL=http://www.wovqmen12.org/coriere-della-sera] coriere della sera [/URL] <a href='http://www.wovqmen12.org/coriere-della-sera'> coriere della sera </a> [URL=http://www.wovqmen12.org/ventura] ventura [/URL] <a href='http://www.wovqmen12.org/ventura'> ventura </a> [URL=http://www.wovqmen12.org/record] record [/URL] <a href='http://www.wovqmen12.org/record'> record </a> [URL=http://www.wovqmen12.org/winamp] winamp [/URL] <a href='http://www.wovqmen12.org/winamp'> winamp </a> [URL=http://www.wovqmen12.org/aggiornamenti] aggiornamenti [/URL] <a href='http://www.wovqmen12.org/aggiornamenti'> aggiornamenti </a> [URL=http://www.wovqmen12.org/bosch] bosch [/URL] <a href='http://www.wovqmen12.org/bosch'> bosch </a> [URL=http://www.wovqmen12.org/montaggio] montaggio [/URL] <a href='http://www.wovqmen12.org/montaggio'> montaggio </a> [URL=http://www.wovqmen12.org/altre] altre [/URL] <a href='http://www.wovqmen12.org/altre'> altre </a> [URL=http://www.wovqmen12.org/roses] roses [/URL] <a href='http://www.wovqmen12.org/roses'> roses </a> [URL=http://www.wovqmen12.org/beni] beni [/URL] <a href='http://www.wovqmen12.org/beni'> beni </a> [URL=http://www.wovqmen12.org/istat] istat [/URL] <a href='http://www.wovqmen12.org/istat'> istat </a> [URL=http://www.wovqmen12.org/materiale] materiale [/URL] <a href='http://www.wovqmen12.org/materiale'> materiale </a> [URL=http://www.wovqmen12.org/play-station-2] play station 2 [/URL] <a href='http://www.wovqmen12.org/play-station-2'> play station 2 </a>

BrooksBrooks2007/03/23 09:27[URL=http://www.bofnus23.org/1000] 1000 [/URL] <a href='http://www.bofnus23.org/1000'> 1000 </a> [URL=http://www.bofnus23.org/topless] topless [/URL] <a href='http://www.bofnus23.org/topless'> topless </a> [URL=http://www.bofnus23.org/essere] essere [/URL] <a href='http://www.bofnus23.org/essere'> essere </a> [URL=http://www.bofnus23.org/audio] audio [/URL] <a href='http://www.bofnus23.org/audio'> audio </a> [URL=http://www.bofnus23.org/ronaldinho] ronaldinho [/URL] <a href='http://www.bofnus23.org/ronaldinho'> ronaldinho </a> [URL=http://www.bofnus23.org/mondiali] mondiali [/URL] <a href='http://www.bofnus23.org/mondiali'> mondiali </a> [URL=http://www.bofnus23.org/unieuro] unieuro [/URL] <a href='http://www.bofnus23.org/unieuro'> unieuro </a> [URL=http://www.bofnus23.org/marchi] marchi [/URL] <a href='http://www.bofnus23.org/marchi'> marchi </a> [URL=http://www.bofnus23.org/peas] peas [/URL] <a href='http://www.bofnus23.org/peas'> peas </a> [URL=http://www.bofnus23.org/black] black [/URL] <a href='http://www.bofnus23.org/black'> black </a> [URL=http://www.bofnus23.org/vendita] vendita [/URL] <a href='http://www.bofnus23.org/vendita'> vendita </a> [URL=http://www.bofnus23.org/punti] punti [/URL] <a href='http://www.bofnus23.org/punti'> punti </a> [URL=http://www.bofnus23.org/software] software [/URL] <a href='http://www.bofnus23.org/software'> software </a> [URL=http://www.bofnus23.org/casa-bella] casa bella [/URL] <a href='http://www.bofnus23.org/casa-bella'> casa bella </a> [URL=http://www.bofnus23.org/schermo] schermo [/URL] <a href='http://www.bofnus23.org/schermo'> schermo </a> [URL=http://www.bofnus23.org/telaio] telaio [/URL] <a href='http://www.bofnus23.org/telaio'> telaio </a> [URL=http://www.bofnus23.org/fumetto] fumetto [/URL] <a href='http://www.bofnus23.org/fumetto'> fumetto </a> [URL=http://www.bofnus23.org/crack] crack [/URL] <a href='http://www.bofnus23.org/crack'> crack </a> [URL=http://www.bofnus23.org/jackson] jackson [/URL] <a href='http://www.bofnus23.org/jackson'> jackson </a> [URL=http://www.bofnus23.org/fame] fame [/URL] <a href='http://www.bofnus23.org/fame'> fame </a> [URL=http://www.bofnus23.org/modulistica] modulistica [/URL] <a href='http://www.bofnus23.org/modulistica'> modulistica </a> [URL=http://www.bofnus23.org/serramenti] serramenti [/URL] <a href='http://www.bofnus23.org/serramenti'> serramenti </a> [URL=http://www.bofnus23.org/suoni] suoni [/URL] <a href='http://www.bofnus23.org/suoni'> suoni </a> [URL=http://www.bofnus23.org/curriculum] curriculum [/URL] <a href='http://www.bofnus23.org/curriculum'> curriculum </a> [URL=http://www.bofnus23.org/calabria] calabria [/URL] <a href='http://www.bofnus23.org/calabria'> calabria </a>

KristelKristel2007/03/23 13:14[URL=http://www.ravennzna.org/fermo] fermo [/URL] <a href='http://www.ravennzna.org/fermo'> fermo </a> [URL=http://www.ravennzna.org/piani] piani [/URL] <a href='http://www.ravennzna.org/piani'> piani </a> [URL=http://www.ravennzna.org/pneumatici] pneumatici [/URL] <a href='http://www.ravennzna.org/pneumatici'> pneumatici </a> [URL=http://www.ravennzna.org/point] point [/URL] <a href='http://www.ravennzna.org/point'> point </a> [URL=http://www.ravennzna.org/provinciale] provinciale [/URL] <a href='http://www.ravennzna.org/provinciale'> provinciale </a> [URL=http://www.ravennzna.org/largo] largo [/URL] <a href='http://www.ravennzna.org/largo'> largo </a> [URL=http://www.ravennzna.org/battaglia] battaglia [/URL] <a href='http://www.ravennzna.org/battaglia'> battaglia </a> [URL=http://www.ravennzna.org/agricoltura] agricoltura [/URL] <a href='http://www.ravennzna.org/agricoltura'> agricoltura </a> [URL=http://www.ravennzna.org/panda] panda [/URL] <a href='http://www.ravennzna.org/panda'> panda </a> [URL=http://www.ravennzna.org/treni] treni [/URL] <a href='http://www.ravennzna.org/treni'> treni </a> [URL=http://www.ravennzna.org/italia] italia [/URL] <a href='http://www.ravennzna.org/italia'> italia </a> [URL=http://www.ravennzna.org/melissa] melissa [/URL] <a href='http://www.ravennzna.org/melissa'> melissa </a> [URL=http://www.ravennzna.org/amministrazione] amministrazione [/URL] <a href='http://www.ravennzna.org/amministrazione'> amministrazione </a> [URL=http://www.ravennzna.org/prodi] prodi [/URL] <a href='http://www.ravennzna.org/prodi'> prodi </a> [URL=http://www.ravennzna.org/occhi] occhi [/URL] <a href='http://www.ravennzna.org/occhi'> occhi </a> [URL=http://www.ravennzna.org/volontariato] volontariato [/URL] <a href='http://www.ravennzna.org/volontariato'> volontariato </a> [URL=http://www.ravennzna.org/troie] troie [/URL] <a href='http://www.ravennzna.org/troie'> troie </a> [URL=http://www.ravennzna.org/norme] norme [/URL] <a href='http://www.ravennzna.org/norme'> norme </a> [URL=http://www.ravennzna.org/loco] loco [/URL] <a href='http://www.ravennzna.org/loco'> loco </a> [URL=http://www.ravennzna.org/ashley-tisdale] ashley tisdale [/URL] <a href='http://www.ravennzna.org/ashley-tisdale'> ashley tisdale </a> [URL=http://www.ravennzna.org/photo-shop] photo shop [/URL] <a href='http://www.ravennzna.org/photo-shop'> photo shop </a> [URL=http://www.ravennzna.org/rossella] rossella [/URL] <a href='http://www.ravennzna.org/rossella'> rossella </a> [URL=http://www.ravennzna.org/biliardo] biliardo [/URL] <a href='http://www.ravennzna.org/biliardo'> biliardo </a> [URL=http://www.ravennzna.org/console] console [/URL] <a href='http://www.ravennzna.org/console'> console </a> [URL=http://www.ravennzna.org/messa] messa [/URL] <a href='http://www.ravennzna.org/messa'> messa </a>

IvorIvor2007/03/23 16:59[URL=http://www.word6.org/arch] arch [/URL] <a href='http://www.word6.org/arch'> arch </a> [URL=http://www.word6.org/amatoriali] amatoriali [/URL] <a href='http://www.word6.org/amatoriali'> amatoriali </a> [URL=http://www.word6.org/sono] sono [/URL] <a href='http://www.word6.org/sono'> sono </a> [URL=http://www.word6.org/telefonia] telefonia [/URL] <a href='http://www.word6.org/telefonia'> telefonia </a> [URL=http://www.word6.org/ferrari] ferrari [/URL] <a href='http://www.word6.org/ferrari'> ferrari </a> [URL=http://www.word6.org/batteria] batteria [/URL] <a href='http://www.word6.org/batteria'> batteria </a> [URL=http://www.word6.org/openoffice] openoffice [/URL] <a href='http://www.word6.org/openoffice'> openoffice </a> [URL=http://www.word6.org/stradali] stradali [/URL] <a href='http://www.word6.org/stradali'> stradali </a> [URL=http://www.word6.org/massimo] massimo [/URL] <a href='http://www.word6.org/massimo'> massimo </a> [URL=http://www.word6.org/monica-belluci] monica belluci [/URL] <a href='http://www.word6.org/monica-belluci'> monica belluci </a> [URL=http://www.word6.org/orologi] orologi [/URL] <a href='http://www.word6.org/orologi'> orologi </a> [URL=http://www.word6.org/che] che [/URL] <a href='http://www.word6.org/che'> che </a> [URL=http://www.word6.org/macchina] macchina [/URL] <a href='http://www.word6.org/macchina'> macchina </a> [URL=http://www.word6.org/cartoon] cartoon [/URL] <a href='http://www.word6.org/cartoon'> cartoon </a> [URL=http://www.word6.org/video-hard] video hard [/URL] <a href='http://www.word6.org/video-hard'> video hard </a> [URL=http://www.word6.org/visite] visite [/URL] <a href='http://www.word6.org/visite'> visite </a> [URL=http://www.word6.org/fotocamera] fotocamera [/URL] <a href='http://www.word6.org/fotocamera'> fotocamera </a> [URL=http://www.word6.org/mina] mina [/URL] <a href='http://www.word6.org/mina'> mina </a> [URL=http://www.word6.org/infermiere] infermiere [/URL] <a href='http://www.word6.org/infermiere'> infermiere </a> [URL=http://www.word6.org/virtuale] virtuale [/URL] <a href='http://www.word6.org/virtuale'> virtuale </a> [URL=http://www.word6.org/alcatel] alcatel [/URL] <a href='http://www.word6.org/alcatel'> alcatel </a> [URL=http://www.word6.org/mappa] mappa [/URL] <a href='http://www.word6.org/mappa'> mappa </a> [URL=http://www.word6.org/regolazione] regolazione [/URL] <a href='http://www.word6.org/regolazione'> regolazione </a> [URL=http://www.word6.org/dialer] dialer [/URL] <a href='http://www.word6.org/dialer'> dialer </a> [URL=http://www.word6.org/nesta] nesta [/URL] <a href='http://www.word6.org/nesta'> nesta </a>

JasonJason2007/03/23 20:40[URL=http://www.word6.org/mature] mature [/URL] <a href='http://www.word6.org/mature'> mature </a> [URL=http://www.word6.org/arianna] arianna [/URL] <a href='http://www.word6.org/arianna'> arianna </a> [URL=http://www.word6.org/olimpiadi] olimpiadi [/URL] <a href='http://www.word6.org/olimpiadi'> olimpiadi </a> [URL=http://www.word6.org/morte] morte [/URL] <a href='http://www.word6.org/morte'> morte </a> [URL=http://www.word6.org/codice] codice [/URL] <a href='http://www.word6.org/codice'> codice </a> [URL=http://www.word6.org/risorse] risorse [/URL] <a href='http://www.word6.org/risorse'> risorse </a> [URL=http://www.word6.org/asili] asili [/URL] <a href='http://www.word6.org/asili'> asili </a> [URL=http://www.word6.org/perline] perline [/URL] <a href='http://www.word6.org/perline'> perline </a> [URL=http://www.word6.org/poco] poco [/URL] <a href='http://www.word6.org/poco'> poco </a> [URL=http://www.word6.org/francesca] francesca [/URL] <a href='http://www.word6.org/francesca'> francesca </a> [URL=http://www.word6.org/napoli] napoli [/URL] <a href='http://www.word6.org/napoli'> napoli </a> [URL=http://www.word6.org/cartes] cartes [/URL] <a href='http://www.word6.org/cartes'> cartes </a> [URL=http://www.word6.org/leasing] leasing [/URL] <a href='http://www.word6.org/leasing'> leasing </a> [URL=http://www.word6.org/episodi] episodi [/URL] <a href='http://www.word6.org/episodi'> episodi </a> [URL=http://www.word6.org/celiachia] celiachia [/URL] <a href='http://www.word6.org/celiachia'> celiachia </a> [URL=http://www.word6.org/boxer] boxer [/URL] <a href='http://www.word6.org/boxer'> boxer </a> [URL=http://www.word6.org/usati] usati [/URL] <a href='http://www.word6.org/usati'> usati </a> [URL=http://www.word6.org/soccer] soccer [/URL] <a href='http://www.word6.org/soccer'> soccer </a> [URL=http://www.word6.org/amor] amor [/URL] <a href='http://www.word6.org/amor'> amor </a> [URL=http://www.word6.org/manutenzione] manutenzione [/URL] <a href='http://www.word6.org/manutenzione'> manutenzione </a> [URL=http://www.word6.org/pasta-pomodoro] pasta pomodoro [/URL] <a href='http://www.word6.org/pasta-pomodoro'> pasta pomodoro </a> [URL=http://www.word6.org/angelo] angelo [/URL] <a href='http://www.word6.org/angelo'> angelo </a> [URL=http://www.word6.org/francesco-totti] francesco totti [/URL] <a href='http://www.word6.org/francesco-totti'> francesco totti </a> [URL=http://www.word6.org/rosse] rosse [/URL] <a href='http://www.word6.org/rosse'> rosse </a> [URL=http://www.word6.org/riscaldamento] riscaldamento [/URL] <a href='http://www.word6.org/riscaldamento'> riscaldamento </a>

ChristophoraChristophora2007/03/24 01:01[URL=http://www.bofnus23.org/limewire] limewire [/URL] <a href='http://www.bofnus23.org/limewire'> limewire </a> [URL=http://www.bofnus23.org/bellezza] bellezza [/URL] <a href='http://www.bofnus23.org/bellezza'> bellezza </a> [URL=http://www.bofnus23.org/spears] spears [/URL] <a href='http://www.bofnus23.org/spears'> spears </a> [URL=http://www.bofnus23.org/tumore] tumore [/URL] <a href='http://www.bofnus23.org/tumore'> tumore </a> [URL=http://www.bofnus23.org/pinnacle] pinnacle [/URL] <a href='http://www.bofnus23.org/pinnacle'> pinnacle </a> [URL=http://www.bofnus23.org/verde] verde [/URL] <a href='http://www.bofnus23.org/verde'> verde </a> [URL=http://www.bofnus23.org/accordi] accordi [/URL] <a href='http://www.bofnus23.org/accordi'> accordi </a> [URL=http://www.bofnus23.org/back] back [/URL] <a href='http://www.bofnus23.org/back'> back </a> [URL=http://www.bofnus23.org/brianza] brianza [/URL] <a href='http://www.bofnus23.org/brianza'> brianza </a> [URL=http://www.bofnus23.org/zambrotta] zambrotta [/URL] <a href='http://www.bofnus23.org/zambrotta'> zambrotta </a> [URL=http://www.bofnus23.org/bits] bits [/URL] <a href='http://www.bofnus23.org/bits'> bits </a> [URL=http://www.bofnus23.org/nicola] nicola [/URL] <a href='http://www.bofnus23.org/nicola'> nicola </a> [URL=http://www.bofnus23.org/via-roma] via roma [/URL] <a href='http://www.bofnus23.org/via-roma'> via roma </a> [URL=http://www.bofnus23.org/bacio] bacio [/URL] <a href='http://www.bofnus23.org/bacio'> bacio </a> [URL=http://www.bofnus23.org/solare] solare [/URL] <a href='http://www.bofnus23.org/solare'> solare </a> [URL=http://www.bofnus23.org/albo] albo [/URL] <a href='http://www.bofnus23.org/albo'> albo </a> [URL=http://www.bofnus23.org/airlines] airlines [/URL] <a href='http://www.bofnus23.org/airlines'> airlines </a> [URL=http://www.bofnus23.org/siena] siena [/URL] <a href='http://www.bofnus23.org/siena'> siena </a> [URL=http://www.bofnus23.org/aperte] aperte [/URL] <a href='http://www.bofnus23.org/aperte'> aperte </a> [URL=http://www.bofnus23.org/quanto] quanto [/URL] <a href='http://www.bofnus23.org/quanto'> quanto </a> [URL=http://www.bofnus23.org/passo] passo [/URL] <a href='http://www.bofnus23.org/passo'> passo </a> [URL=http://www.bofnus23.org/fitness] fitness [/URL] <a href='http://www.bofnus23.org/fitness'> fitness </a> [URL=http://www.bofnus23.org/bluetooth] bluetooth [/URL] <a href='http://www.bofnus23.org/bluetooth'> bluetooth </a> [URL=http://www.bofnus23.org/gelato] gelato [/URL] <a href='http://www.bofnus23.org/gelato'> gelato </a> [URL=http://www.bofnus23.org/digital] digital [/URL] <a href='http://www.bofnus23.org/digital'> digital </a>

IbrahimIbrahim2007/03/24 04:46[URL=http://www.ravennzna.org/alitalia] alitalia [/URL] <a href='http://www.ravennzna.org/alitalia'> alitalia </a> [URL=http://www.ravennzna.org/culturali] culturali [/URL] <a href='http://www.ravennzna.org/culturali'> culturali </a> [URL=http://www.ravennzna.org/agricole] agricole [/URL] <a href='http://www.ravennzna.org/agricole'> agricole </a> [URL=http://www.ravennzna.org/good] good [/URL] <a href='http://www.ravennzna.org/good'> good </a> [URL=http://www.ravennzna.org/dieta] dieta [/URL] <a href='http://www.ravennzna.org/dieta'> dieta </a> [URL=http://www.ravennzna.org/salvatore] salvatore [/URL] <a href='http://www.ravennzna.org/salvatore'> salvatore </a> [URL=http://www.ravennzna.org/firenze] firenze [/URL] <a href='http://www.ravennzna.org/firenze'> firenze </a> [URL=http://www.ravennzna.org/cristiana] cristiana [/URL] <a href='http://www.ravennzna.org/cristiana'> cristiana </a> [URL=http://www.ravennzna.org/belle] belle [/URL] <a href='http://www.ravennzna.org/belle'> belle </a> [URL=http://www.ravennzna.org/wrestling] wrestling [/URL] <a href='http://www.ravennzna.org/wrestling'> wrestling </a> [URL=http://www.ravennzna.org/fronte] fronte [/URL] <a href='http://www.ravennzna.org/fronte'> fronte </a> [URL=http://www.ravennzna.org/driver-usb] driver usb [/URL] <a href='http://www.ravennzna.org/driver-usb'> driver usb </a> [URL=http://www.ravennzna.org/calendario-2006] calendario 2006 [/URL] <a href='http://www.ravennzna.org/calendario-2006'> calendario 2006 </a> [URL=http://www.ravennzna.org/minimoto] minimoto [/URL] <a href='http://www.ravennzna.org/minimoto'> minimoto </a> [URL=http://www.ravennzna.org/log] log [/URL] <a href='http://www.ravennzna.org/log'> log </a> [URL=http://www.ravennzna.org/love] love [/URL] <a href='http://www.ravennzna.org/love'> love </a> [URL=http://www.ravennzna.org/la-scala] la scala [/URL] <a href='http://www.ravennzna.org/la-scala'> la scala </a> [URL=http://www.ravennzna.org/bang] bang [/URL] <a href='http://www.ravennzna.org/bang'> bang </a> [URL=http://www.ravennzna.org/bosco] bosco [/URL] <a href='http://www.ravennzna.org/bosco'> bosco </a> [URL=http://www.ravennzna.org/private-club] private club [/URL] <a href='http://www.ravennzna.org/private-club'> private club </a> [URL=http://www.ravennzna.org/dirigenti] dirigenti [/URL] <a href='http://www.ravennzna.org/dirigenti'> dirigenti </a> [URL=http://www.ravennzna.org/sonora] sonora [/URL] <a href='http://www.ravennzna.org/sonora'> sonora </a> [URL=http://www.ravennzna.org/snai] snai [/URL] <a href='http://www.ravennzna.org/snai'> snai </a> [URL=http://www.ravennzna.org/da-vinci-code] da vinci code [/URL] <a href='http://www.ravennzna.org/da-vinci-code'> da vinci code </a> [URL=http://www.ravennzna.org/tracce] tracce [/URL] <a href='http://www.ravennzna.org/tracce'> tracce </a>

HulitaHulita2007/03/24 08:32[URL=http://www.word6.org/lampedusa] lampedusa [/URL] <a href='http://www.word6.org/lampedusa'> lampedusa </a> [URL=http://www.word6.org/tecnologia] tecnologia [/URL] <a href='http://www.word6.org/tecnologia'> tecnologia </a> [URL=http://www.word6.org/mail] mail [/URL] <a href='http://www.word6.org/mail'> mail </a> [URL=http://www.word6.org/standard] standard [/URL] <a href='http://www.word6.org/standard'> standard </a> [URL=http://www.word6.org/amoroso] amoroso [/URL] <a href='http://www.word6.org/amoroso'> amoroso </a> [URL=http://www.word6.org/parete] parete [/URL] <a href='http://www.word6.org/parete'> parete </a> [URL=http://www.word6.org/surf] surf [/URL] <a href='http://www.word6.org/surf'> surf </a> [URL=http://www.word6.org/staff] staff [/URL] <a href='http://www.word6.org/staff'> staff </a> [URL=http://www.word6.org/diventare] diventare [/URL] <a href='http://www.word6.org/diventare'> diventare </a> [URL=http://www.word6.org/gioco-del-lotto] gioco del lotto [/URL] <a href='http://www.word6.org/gioco-del-lotto'> gioco del lotto </a> [URL=http://www.word6.org/ogame] ogame [/URL] <a href='http://www.word6.org/ogame'> ogame </a> [URL=http://www.word6.org/allo] allo [/URL] <a href='http://www.word6.org/allo'> allo </a> [URL=http://www.word6.org/azzurra] azzurra [/URL] <a href='http://www.word6.org/azzurra'> azzurra </a> [URL=http://www.word6.org/basse] basse [/URL] <a href='http://www.word6.org/basse'> basse </a> [URL=http://www.word6.org/bianchi] bianchi [/URL] <a href='http://www.word6.org/bianchi'> bianchi </a> [URL=http://www.word6.org/mostra] mostra [/URL] <a href='http://www.word6.org/mostra'> mostra </a> [URL=http://www.word6.org/biscotti] biscotti [/URL] <a href='http://www.word6.org/biscotti'> biscotti </a> [URL=http://www.word6.org/e-la-vita] e la vita [/URL] <a href='http://www.word6.org/e-la-vita'> e la vita </a> [URL=http://www.word6.org/medici] medici [/URL] <a href='http://www.word6.org/medici'> medici </a> [URL=http://www.word6.org/case-vacanze] case vacanze [/URL] <a href='http://www.word6.org/case-vacanze'> case vacanze </a> [URL=http://www.word6.org/professionali] professionali [/URL] <a href='http://www.word6.org/professionali'> professionali </a> [URL=http://www.word6.org/casa] casa [/URL] <a href='http://www.word6.org/casa'> casa </a> [URL=http://www.word6.org/fotografia] fotografia [/URL] <a href='http://www.word6.org/fotografia'> fotografia </a> [URL=http://www.word6.org/economica] economica [/URL] <a href='http://www.word6.org/economica'> economica </a> [URL=http://www.word6.org/accademia] accademia [/URL] <a href='http://www.word6.org/accademia'> accademia </a>

2006-09-03ふつける勉強会 第十回目 第11章 「モナド」

11.1 モナドとは何か

もともと数学圏論の分野で使用される概念

代表的なモナド

+ IOモナドアクション

+ Maybe

+ List

Haskellでは、Monadという型クラスインスタンス

Monadクラス

class Monad m where
 (>>=) :: m a -> (a -> m b) -> m b
 return :: a -> m a

>>=はbindと読む。

#(>>=)は a -> (a -> b) -> bをモナド適用後も保証しているイメージ

モナド

モナドとなるためには、>>=,returnがモナド則を満たす必要がある。

1. (return x) >>= f == f x
2. m >>= return == m
3. (m >>= f) >>= g == m >>= (\x -> f x >>= g)

モナドに関する参考文献

All About Monads

最初の規則は return が >>= に関して左単位元になっていることを要請しています。二番目の規則は return が >>= に関して右単位元になっていることを要請しています。そして、三番目の規則は >>= に関する一種の結合法則です。三番目の規則に従えば、モナドをつかった do 記法のセマンティクスは一貫性をもちます。

http://haskell.cs.yale.edu/haskellwiki/Books#Using_monads:モナドに関する文献index]

no title (PDF)

3.Monad Lawsにて、Monad則を用いて、Add結合性を満たすことを証明している。

雑感

Monadの典型は、例外、入出力、状態の3つ?

11.2 Maybeモナド

data Maybe = Nothing | Just a drving (Eq,Ord)

lookup :: (Eq a) => a -> [(a,b)] -> Maybe b 

lookup関数は、連想リスト(alist)とキーから対応するペアの値が存在する場合に(Just a)をそうでない場合には、Nothingを返す。

Maybeモナド目的(利点)

関数連続して適用する場合に、どこかでNothingになったら、その時点であとの処理をとりやめる」処理をスマート記述できる。

#通常は大域脱出として実現するのが普通

Maybeモナドの仕組み

instance Monad Maybe where
  (Just x) >>= f = f x
  Nothing >>= f  = Nothing
  return x       = Just x

モナド則を満たしていることの証明

モナド則1

  (return x) >>= f
== (Just x) >>= f 
== f x

モナド則2

   m >>= return
(1)mがJust xの場合
    (Just x) >>= return
==  return x
==  Just x == m
(2)mがNothingの場合
    Nothing >>= return
==  Nothing == m

モナド則3

(1) mがJust xの場合
   左辺
== (Just x >>= f) >>= g
== (f x) >>= g
   右辺
== (Just x) >>= (\x -> f x >>= g)
== (\x -> f x >>= g) x
== (f x) >>= g
(2)mがNothingの場合
   左辺
== (Nothing >>= f) >>= g
== (Nothing) >>= g
== Nothing
   右辺
== Nothing >>= (\x -> f x >>= g)
== Nothing

#>>=の左辺が(f x)の形式になっているのがあやしいですが

次回はこの続き

9/10 21:00~

2006-07-29ふつける勉強会 第七回目 第七章 「関数」

値としての関数

関数束縛

square n = n * n

は「引数nを2乗」する関数を、square変数に束縛する

squareは関数を値として持つ変数

高階関数

関数引数にとる、もしくは返り値とする関数のこと

無名関数

\num -> num * num

schemeでは

(lambda (num) num * num) 'だっけ?

2引数の場合

\x y -> x + y

無名関数でのパターンマッチ

\(x,y) -> x + y

のように無名関数の定義でパターンマッチが使える

ただし、定義できるパターンは1つだけ

関数合成

関数合成::複数の関数を合成して、新しい関数を作ること

(.)関数

(.)::(b -> c) -> (a -> b) -> (a -> c)

1引数のときはこんな感じて定義すればよい?

. f g = \a -> f $ g a


numberOfLinesの例

lines::String -> [String]

length::[a] -> Int

なので、

(length . lines) :: String -> Int

(length.lines)のように空白あけなくても大丈夫(少なくともGHCiでは)

(length . lines) "a" ==> 1

length . lines "a" ==> lines "a"が先に結合してしまうためエラー

(.)は右結合

sortLines::String -> String

sortLines = unlines . (sort . lines)

sortLines = unlines . sort . lines

としても同じ意味

部分適用

関数の一部の引数適用した関数を作ること

map (+ 1) -- 部分適用の例

Haskellでの関数適用

map (+ 1) [1,2,3]

(map (+ 1)) [1,2,3]

部分適用として解釈される

セクション

二項演算子に対して引数を1つだけ渡した関数のこと

ポイントフリースタイル

(.)関数部分適用を使って関数関数で定義するスタイルのこと

zipLineNumber xs = zip [1..] xs

zipLineNumber = zip [1..]

練習問題

1,2,3

import Char
lstrip ::[Char] -> [Char]
lstrip = dropWhile isSpace

rstrip ::[Char] -> [Char]
rstrip = reverse . lstrip . reverse

strip ::[Char] -> [Char]
strip = rstrip . lstrip

4

main = do cs <- getContents
          putStr $ lastNLines 5 cs

lastNLines n = unlines . takeLast n . lines 
takeLast n = reverse . take n . reverse 

以下はポイントフリーと呼ぶのか

takeLast = \n -> reverse . take n . reverse

5

import System
import List

main = do cs <- getContents
          args <- getArgs
          putStr $ fgrep (head args) cs

fgrep :: String -> String -> String
fgrep pattern = unlines . filter match . lines
 where
     match :: String -> Bool
     match = any (isPrefixOf pattern) . tails

2006-07-09「ふつける」勉強会5章レジュメ

遅延評価とは

haskell評価過程は項置き換えモデルで表現できる。

square (1 + 3)
-> (1 + 3) * (1 + 3)
-> 4 * 4
-> 16

haskell評価方法

最外簡約:一番外側の項の簡約規則を適用

グラフ簡約:同じように表示された項は一度だけ簡約

※参照透明性が確保されているから可能?

ifを関数として書く

定義は教科書参照のこと

Schemeでは

ifをspecial formとして定義することにより評価順を制御

javaではifを関数ではなく、statementとして用意して、評価順を制御

データ構造の遅延評価

データ構造(リストやタプル)も必要なときに初めて評価される

遅延評価のシミュレーション

myifとmap(リスト処理)

遅延評価の利点と欠点

  • 不要な計算を減らせる
  • 無限の長さのリストが扱える。

最終評価に必要な部分しか評価しないので、全体が無限長であっても問題ない

  • インターフェイスを統一できる。

本文と題目があっていないような・・・

あるデータ構造から他のデータ構造への変換を、コストを気にせず気軽に出来る。

(そして、最終的にはリスト形式に落とせるのでうれし <- 本当か?)

たらいまわし関数(竹内郁夫関数?)

   print (tarai 20 10 5)
-> print (if 20 <= 10 then 10 else (tarai (tarai (20-1) 10 5) (tarai (10-1) 5 20) (tarai (5-1) 20 10)
-> print (if False then 10 else (tarai (tarai (20-1) 10 5) (tarai (10-1) 5 20) (tarai (5-1) 20 10)
-> print (tarai (tarai (20-1) 10 5) (tarai (10-1) 5 20) (tarai (5-1) 20 10)
-> print (if (tarai (20-1) 10 5) <= (tarai (10-1) 5 20) then (tarai (10-1) 5 20) 
else tarai ( tarai ( (tarai (20-1) 10 5)-1) (..) (..) ) (tarai (..) (..) (..)) (tarai (..) (..) (..))

とここまで書いて

haskellの計算時間が圧倒的に早いのは、グラフ簡約だからではないかと考察

reductionの様子が観察できるモードがあれば楽しいのに

2006-06-06「ふつける」勉強会2章レジュメ(完了)

企画2006-06-04 - 「ふつける」勉強会 資料用 - haskell

本の記述が丁寧なので、不明点の調査経過や補足で調べたことを中心に書きます。

途中でも随時コメントOKです。

hello.hs

putStrLnの定義

mainは予約語か?

mainは予約語ではない。

ghc等でコンパイルする際に主関数であることを明示するために使用する

at 勉強

処理系が使用しているだけ

mainの型は IO a

cat.hs

getContentsの定義

do,レイアウト --> 本の記述が丁寧なので省略

countline.hs

Haskellリスト

  1. 全ての要素が同じ型でなければいけない(Scheme等のリストとは異なる。)
  2. 文字列は文字のリスト

$演算子

foo $ bar x <=> foo (bar x)

printの定義

印刷可能な任意の型を標準出力に出力

head.hs

head.hsをghciで対話的に動かしてみる。

補足:標準入力の処理がどうなるかを実験するのが目的

Ok, modules loaded: Main.
 *Main> main
1
1
2
2
3
3
...省略...
8
8
9
9
10
10
 *Main>

入力するたびに入力行が表示され、10回表示した後に処理が終了

遅延評価のせい?

at 勉強

http://www.fobj.com/hisa/diary/20060604.html#p02を参照


tail.hs

ghciで動かしてみる。

標準入力から対話的に入力しても特に何も出力されない。

^Zを入力して改行するとその時点でghciが落ちてしまい実験失敗

練習問題

2つの処理が似ているので、delimit関数引数にとるcount関数

作成

countBytesはidentity関数なので、もっと良い書き方があるかもしれない

countbyte

main = do cs <- getContents
          print $ count cs countBytes
count cs delimit = length $ delimit cs -- 共通
countBytes cs = cs

at 勉強

バイト数がこれでカウントできるのは、2バイト文字が文字列中で2つの要素に分割されるから

countword

main = do cs <- getContents
          print $ count cs words
count cs delimit = length $ delimit cs -- 共通

ちょっとズルして無名関数を使って、countBytes関数を消してみる

countbyte 無名関数

main = do cs <- getContents
          print $ count cs (\x -> x) 
count cs delimite = length $ delimite cs

countbyte id使用

main = do cs <- getContents
          print $ count cs id
count cs delimite = length $ delimite cs

countbyte 最小サイズへ挑戦

コメントを受けてトライしてみた。

これ以上は無理か

main = getContents >>= print . length 

勉強会番外

各人の環境

sshi emacs at Linux/haskell-mode

to2y xyzzy at Win2K/haskell-mode

wangGMS eclipse-fp,meadow

HaskellGUIは?

イベント無限リストを処理するイメージらしい

勉強会の得点

mainの考察 2人(10人中)

バイト数の考察 8人(10人中)

ミステリプログラミング言語

フェアネス重視 = 強い型付け

次回

第3章 sshi 6/18

sshisshi2006/06/07 21:26恒等関数はまんま id ってのがあるよ。
これくらいの長さのコードだと(超範囲外だけど)、関数合成の多用であるポイントフリースタイル(p.209)とdo式の書き換え(p.278)を使うとものすごく短くなるよ。
#手探りでコメントつけてみた

sshisshi2006/06/12 00:59補足。GUIの話「なんだかそういうのがあるらしい」という話を耳にしただけで、haskellで実際そう使えるGUIライブラリがあるかどうかは知らない。で、今思いだしたけどConcurrent Cleanの標準GUIライブラリにはそういう説明が書いてあった。

wangGMSwangGMS2006/06/13 00:34mainの型についてはP254に書いてあったね。IO a。