Главная
Study mode:
on
1
Intro
2
Inception
3
Related language features
4
Towards macros in Scala 2.10
5
Macros as implemented in 2.10
6
On the verge of the release
7
Adoption
8
Recognition
9
The main question of today's talk
10
Our hypothesis
11
Features represented with method calls
12
Our experience
13
Empowered method calls
14
Empowered interpolation
15
Empowered implicits
16
Example #3 - Before macros
17
Example #3 - Vanilla macros
18
Example #3 - Implicit macros
19
Implicits and macros: a match made in heaven
20
Implicits and macros: a retrospective
21
Summary
22
Limitations of def macros
23
Limitation #2 - Can't affect global bindings
24
Macro paradise
25
Untyped macros
26
Type macros
27
Macro annotations
28
Two faces of Scala macros
29
The phenomenon of whitebox macros
30
Explanation #1 - Scala is not very whitebox
31
Explanation #2 - Whitebox is not very Scala
32
The bottom line
Description:
Explore the evolution and intricacies of Scala macros in this 39-minute conference talk from Strange Loop 2013. Dive into the internals of Scala macros, starting with the initial design of def macros in Scala 2.10. Discover popular use cases and patterns characteristic of the macro system. Learn about macro paradise and its various inhabitants, including type macros, untyped macros, inference macros, jitted macros, and macro annotations. Follow the journey of these new macro concepts as they attempt to make their way into Scala 2.11, facing challenges from the Scala typechecker. Understand the emergence of blackbox and whitebox macros as the next generation of Scala macros. Gain insights into the limitations of def macros and the potential future of macro annotations in Scala 2.12. Presented by Eugene Burmako, a metaprogramming expert from École Polytechnique Fédérale de Lausanne, this talk offers a comprehensive overview of Scala macros' philosophy and development.

Philosophy of Scala Macros

Strange Loop Conference
Add to list