Debasish Ghosh, “Functional and Algebraic Domain Modeling”
March 24 @ 7:00 pm - 9:00 pm CDTFree
[Please note that we will be meeting a week later than usual this month: on the 4th Wednesday of March, rather than the 3rd Wednesday.]
From algebra of types to the algebra of domain models – the talk focuses on how an algebraic approach with pure functional programming can help evolve domain models in real life use cases. The secret sauce is “compositionality” – the talk demonstrates how carefully developed combinators compose algebraically to evolve into larger domain abstractions from smaller ones. And this composition is type-safe which implies that most of our domain invariants are statically checked and verified during compilation time. In course of the talk we develop real life use cases and demonstrate the veracity of our algebraic approach. The talk also discusses how to model side-effects as pure algebraic abstractions and make them composable along with the rest of the domain model.
The talk uses Scala, a functional programming language that offers strong typing. And we will see how the strong type system plays an important role in designing type-safe domain models.
Speaker Biography: Foodie, father, husband and Seinfeld fanboy. Senior member of ACM and loves spending time with his beautiful family. Passionate about technology and open source, loves functional programming, math and machine learning. Authored 2 books – (a) DSLs In Action and (b) Functional & Reactive Domain Modeling both published by Manning. Tweets at @debasishg, blogs at “Ruminations of a Programmer” (http://debasishg.blogspot.com).