
< session />
Thu, April 24ArchitectureBackEndTechLead
In software development, distinguishing between domain logic and side effects is essential for maintaining clarity, consistency, and composability within a system. When these elements become intertwined, accidental complexity increases, making systems harder to understand, test, and maintain.
This session will explore how to elevate domain models into well-defined Domain-Specific Languages (DSLs) using the tagless-final approach. The tagless-final technique enables the construction of type-safe DSLs, where the safety and correctness of the language are guaranteed by the host language’s type system. By treating domains as languages, this approach creates clearer boundaries between domain logic and side effects, empowering teams to communicate more effectively, align implementation with business intent, and reduce accidental complexity.
The session will cover:
By the end of this session, attendees will gain practical insights into leveraging the tagless-final approach to construct domains as languages, tackle accidental complexity, and create domain models that are consistent, expressive, and easier to maintain over time.
Target Audience: This session is aimed at Software Architects and Backend Developers who work with Domain-Driven Design (DDD) and are looking to improve the clarity and maintainability of their systems by using functional programming techniques. Functional Programmers and Tech Leads will also benefit from understanding how tagless-final can be applied to domain modeling to create more expressive and maintainable DSLs.
< speaker_info />
Kenichi is an experienced software engineer and architect at Loglass and a Technical Advisor for ContractS, based in Japan. With a strong foundation in programming language theory, Kenichi brings advanced expertise in areas such as tagless-final, type-safe language-integrated query, and multi-stage computation to the design and development of secure, business-oriented products. Driven by a commitment to building high-quality, efficient solutions, Kenichi excels in creating products that balance productivity with excellence.