• このエントリーをはてなブックマークに追加

スポンサードリンク

はじめに

オブジェクト指向言語の世界では, デザインパターンが人気!

関数型言語の世界でも, OO の影響を受けて, きっと誰かがパターンを考えているに違いないと考えて, いろいろとネットで情報収集してみた.

思ったとおりで, いくつか動画をみつけたのでまとめてみる.

Functinal programming patterns for the non-mathematician

15 分くらいに短くまとまっている動画. JavaScript.

関数に成り立つ法則によってまとめている.

  • Composition laws
  • Lenses laws
  • Fmap laws
  • Monad laws
  • Applicative laws
  • Monoid laws
  • Arrow laws

SlideShare のプレゼン資料

Functional Programming Patterns

動画はリンク先から.

プレゼン, 動画ともにとてもボリュームがある. 導入部の説明がとても笑える.

SlideShare のプレゼン資料

Patterns and Functional Programming

Patterns and Functional Programming from Chariot Solutions on Vimeo.

この本を書いた人の動画.

Amazon:

Pragmatic Bookshelf:

既存の OO Pattern を FP で置き換える.

こんな記事もみつけた.

    Replacing Object Oriented Patterns
        Introduction
        Replacing Functional Interface
        Replacing State Carrying Functional Interface
        Replacing Command excerpt
        Replacing Builder For Immutable Object
        Replacing Iterator
        Replacing Template Method
        Replacing Strategy
        Replacing Null Object
        Replacing Decorator
        Replacing Visitor
        Replacing Dependency Injection

FP 独自のパターンも紹介.

    Functional Patterns
        Introduction
        Tail Recursion excerpt
        Mutual Recursion
        Filter-Map-Reduce
        Chain of Operations
        Function Builder
        Memoization
        Lazy Sequence
        Focused Mutability
        Customized Control Flow
        Domain-Specific Language

これはあとで読みたい.(できれば日本語訳で!!)

Functional Design Patterns

Clojure による,パターンの紹介.

内容をみていないのだけれども, ブックマークだけしておく.

  • State/Event,
  • Consequences,
  • Accumulator
  • MapReduce,
  • Reduce/Combine,
  • Recursive Expansion,

おわりに

シンフォニーとミニマルミュージック

OO でのパターンと FP のパターンでは, うけるイメージが違った.

OO のパターンからは, 堅牢な構築物のようなイメージを受ける. それは, クラス図で表現されているからかもしれない.

それに対して, FP からは, ミニマルな文様なようなイメージを受ける. 微細なパターンが組み合わさって, 全体をつくるような. FP で言うところのパターンは小さいので, OO でいうところの idiom のようにもとらえられる.

それは, 堅牢な交響曲と, 微細なテクノミュージックのような違いを感じる.

今年の目標は関数型パターンをみにつけること.

去年の目標は, OO のデザインパターンを身につけることが目標だった.

今年は, FP のパターンを身につけることを目標にしよう.

それにしても, FP のパターンは Gof のような教科書が見当たらない.

動画の内容にも言えることだけれども, いろんなひとがそれぞれの意見を持っているような群雄割拠状態.

だれでもいいので, すごい本とか出してこの分野を統一してくれないかなと思ってみたり.