BRING YOUR OWN EFFECT
summary
Adds BYOE to ScalaCache by abstracting APIs over a type F and providing a cats‑effect–style Async/Sync typeclass. Implements concrete instances: Scala Future, a synchronous Caffeine backend built with delay, and a memcached backend using spy memcached callbacks; uses the Identity monad for plain sync results. Produces one API that returns F[Option[V]] so users pick Future/Task/IO or plain values, simplifies wiring with ReaderT/EitherT stacks and aids testing; deployed and working.
AI-written summary · about
chapters (9)
- 0:00Start
- 1:18The good old days
- 8:47What typeclass do I need?
- 16:52Why should I do this?
- 18:06Extra dimension of abstraction
- 19:29Composition of operations
- 22:12Choice of effects
- 23:52Concrete impl details
- 24:42Bring it all together
related talks
31mTAKING YOUR SIDE-EFFECTS ASIDE
42mThe making of an IO
40mCats Effect 3
17mFetch: Simple & Efficient data access
23mEffects types in Scala - how to choose one
31mPick a (Effect) Lane: A comparison of direct-style Scala vs effect systems
36mConcurrency with Cats-effect
27mBeyond `flatMap`: Is Kyo the Future of Scala Effects?
