Functions and Typeclasses in Scala

Details

Imagine one day you want to write functions in a strict Functional Scala manner which is pure, total, and deterministic. But how does that benefit you? For one, pure functions are both easy to reason and test which ultimately leads to improved code quality. Next, another equally important and interesting topic is Typeclass. Typeclass is the implementation for algebraic structure like Functor and Monad. Typeclass is similar to interface in Object Oriented (OO) programming, but it is a lot more powerful than what interface can do. Again, how does this feature benefits you?

In this talk, Teck Hooi will demonstrate writing pure functions using some common use cases and how to deal with the side effects. Next, he will implement Typeclasses using Monoid, Functor, and Monads as examples. Moving from there, he will show how library like Cats can be of great help and become a necessity in your project.

Presenter:
Teck Hooi is a Java developer for many years and some Scala in recent years. He is working with a trading company that manages debt trading platform as a developer. His interest in FP started many years ago with Clojure and Scala. He focuses on statically typed language (e.g. Scala) and pursuing other functional design patterns in his spare time.

Sponsor:
Thanks to ThoughtWorks for providing us with the venue and refreshments.

Agenda:
7:00 pm -- Food & drinks
7:20 pm -- Meetup group announcements
7:25 pm -- Venue / event host and sponsor announcements
7:30 pm -- Presentation
8:45 pm -- Q&A