Chapter Meetups
The Essence of the Iterator pattern
The Essence of the Iterator pattern treats iterating over collections as two problems, which exhibit traversal of collections (and modifying the content) and accumulating values based on the contents. Jeremy Gibbons and Bruno C.d.S. Oliveira show how Applicative Functors and related type classes can be used in functional programming to solve these problems.
Paper: http://www.cs.ox.ac.uk/jeremy.gibbons/publications/iterator.pdf
The paper is widely quoted amongst the functional programming community and illustrates nicely how recent acadamic research (Applicative Functors, McBride, 2008) finds its way into language design and application of functional programming languages such as Scala or Haskell.
…Life beyond Distributed Transactions
Together with Lutz Huehnken we will discuss the paper "Life beyond Distributed Transactions". It is available here or at the Papers we love repository under "Distributed Systems".
Participants are expected to have read the paper beforehand, you are not expected to have understood all the details - that's what our discussions are for.
The paper is interesting for people, you want to write scalable information systems and is part of the recommended "reads" of the Akka team.
…Stackless Scala with Free Monads
Stackless Scala with Free Monads is a fairly easy to read paper with many practical applications. It introduces trampolines as a means to avoid stackoverflow errors on programming languages of the JVM and generalizes them into the Free Monad, a structure which can help writing monadic expressions for any type constructor if a functor is defined. Free monads can be useful in tackling the expression problem which is part of another paper.
The paper can be found here:
http://blog.higher-order.com/assets/trampolines.pdf
and you are expected to have at least tried to read it when coming to the meetup so that we can efficiently discuss it.
…