Overview
Syllabus
Intro
Inception
Related language features
Towards macros in Scala 2.10
Macros as implemented in 2.10
On the verge of the release
Adoption
Recognition
The main question of today's talk
Our hypothesis
Features represented with method calls
Our experience
Empowered method calls
Empowered interpolation
Empowered implicits
Example #3 - Before macros
Example #3 - Vanilla macros
Example #3 - Implicit macros
Implicits and macros: a match made in heaven
Implicits and macros: a retrospective
Summary
Limitations of def macros
Limitation #2 - Can't affect global bindings
Macro paradise
Untyped macros
Type macros
Macro annotations
Two faces of Scala macros
The phenomenon of whitebox macros
Explanation #1 - Scala is not very whitebox
Explanation #2 - Whitebox is not very Scala
The bottom line
Taught by
Strange Loop Conference