

Inverted Polymorphism With Pattern Matching - JackMorgan
http://deliberate-software.com/inversed-polymorphism/

======
dmiladinov
Without actually saying the words, this post makes a good introduction to the
[expression problem][0], trading the ease of adding types for the ease of
adding behaviors.

[TINSTAAFL][1], but what a functional programming paradigm takes away it
replaces with brevity, concision, additional type safety, and greater
opportunities for the compiler to restate your algorithms in a form more
conducive to parallelization and concurrency.

[0]:
[http://c2.com/cgi/wiki?ExpressionProblem](http://c2.com/cgi/wiki?ExpressionProblem)

[1]:
[http://en.m.wikipedia.org/wiki/There_ain't_no_such_thing_as_...](http://en.m.wikipedia.org/wiki/There_ain't_no_such_thing_as_a_free_lunch)

