✨ This talk was recorded at Lambda Days in June 2025. If you're curious about our upcoming event, check https://lambdadays.org ✨
Shoehorning dependency injection into a FP language, what does it take?
Programming with functions is great. However, when growing large applications, programming with modules is even better. And, at scale, being able to easily modify the graph of modules becomes essential. This is exactly what an effective dependency injection system should provide! Unfortunately, many FP languages do not support dependency injection out of the box.
This talk will first present the criteria for what makes a given dependency injection system effective.
It will then show how to implement such a system for a language like Unison.
Unison is a functional programming language with no support for meta-programming and limited support for abstraction; it only provides an effect and handler type system called "abilities".
We will see how we can implement our own dependency injection system with abilities and finally present the idea of “Programmable typeclasses” for a FP language like Unison.
Let's keep in touch! Follow us on:
💥BlueSky: https://bsky.app/profile/lambdadays.b...
💥LinkedIn: / lambda-days
💥Facebook: / lambdadays
💥Mastodon: https://genserver.social/codesync
💥Twitter: / lambdadays