Say Goodbye to Implicits - Contextual Abstractions in Scala 3
summary
Shows that Scala 3 removes the implicit keyword and replaces it with given/using, extension methods and a scala.Conversion class, with clearer import syntax and a new summon helper; demonstrates these changes across seven use cases (context, extensions, type classes, conversions, imports, anonymous givens, compiler errors) using side‑by‑side Scala 2 and Scala 3 code, two GitHub repos with runnable examples, and a migration path that lets Scala 2 and 3 coexist in 3.0/3.1.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 1:08Implicits in Scala 2
- 3:55Contextual abstractions
- 8:50Scala 3 implicits redesign
- 10:56Providing context
- 13:21Adding functionality
- 16:12Type classes
- 23:20Implicit conversions
- 25:27Importing implicits
- 27:32Mandatory names
- 30:42Compiler errors
- 32:50Migration to Scala 3
- 33:56Improvements summary
- 36:24Q&A
related talks
46mFull Stack Scala
01h 31mScala.js Workshop
42mScala.js Semantics - and how they support performance and JavaScript interop
54mThe Things Scala js Does to Make Your Code Fast
45mInlining anonymous functions with macros
49mScala js: getting the best of JavaScript and Scala
31mScala for Javascript Kiddies; Javascript for Scala Nerds
58mFun With Parsing
