Back to Blog
Tech Trends

Functional Design

John A. De Goes·February 4, 2024
Functional Design

Capture the benefits of functional programming techniques across your whole application, in a way that's highly accessible to the whole team and new hires.

Most problems can benefit from a domain-specific model, constructed using immutable data types and operators. Functional Design teaches you how to directly benefit from functional programming techniques across your whole application, in a way that's highly accessible to the whole team and new hires — without requiring knowledge of category theory or type classes.

Topics Covered

  • Functional domain modeling
  • The essence of composability
  • Measuring the orthogonality of operators
  • Achieving both minimalism and expressiveness
  • Using types to enforce business constraints
  • Generalized algebraic data types for advanced modeling
  • Principle of least power applied to functional design
  • Design techniques used in the ZIO library and broader ecosystem
  • Functional approaches to internal domain-specific languages
  • Translating between different domain-specific languages