Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Haskell でつくる VM 〜散りゆく Endomorphism〜

Haskell でつくる VM 〜散りゆく Endomorphism〜

関数型LT大会の LT です http://connpass.com/event/5795/

taiki45

May 11, 2014
Tweet

More Decks by taiki45

Other Decks in Programming

Transcript

  1. Monoid (M, ŋ) m ŋ i = m = i

    ŋ m m ŋ (m ŋ m) = (m ŋ m) ŋ m
  2. ਖ਼ͷ੔਺ (N, ×) 3 × 1 = 3 = 3

    × 1 3 × (4 × 5) = (3 × 4) × 5
  3. Ϧετ (L, ++) [1, 2] ++ [] = [1, 2]

    = [] ++ [1, 2] [1] ++ ([2] ++ [3]) = ([1] ++ [2]) ++ [3]
  4. Endomorphism as Monoid A id f g f . id

    = f = id . f (h . g) . f = h . (g . f) h