Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore a powerful technique for implementing domain-specific languages (DSLs) that support user-defined functions in this 42-minute conference talk from Scala Days. Delve into the challenges of incorporating functions into domain objects and discover an innovative approach using abstract arrows to represent domain functions. Learn how to provide users with a familiar lambda syntax for defining domain functions while leveraging Scala's compiler for typechecking. Examine the process of translating Scala functions into point-free compositions of arrows, utilizing the Libretto project for a library solution. Gain insights into creating clean, point-free representations for programs while offering users a familiar lambda notation. Understand how Scala's unique features enhance this technique, making it particularly effective for DSL implementation.