Please log in to watch this conference skillscast.
This talk will outline what Scala macros are, and in what capacity the notion of compile-time metaprogramming can be useful to you, on a series of concrete use cases from research and industry. You will see how Slick, Play, Shapeless, Akka, Pickling, Async, Specs, and others use macros and will learn how to apply those techniques.
Just three months after the first, experimental release of Scala macros in 2.10, we had a Scala team meeting where we decided that macros look good for becoming non-experimental in 2.12. Why go from an experiment to an official part of the language so swiftly? Well, that's because macros are genuinely useful in a wide range of applications, making impossible things possible and tedious things enjoyable.
The beautiful thing about macros in Scala is their natural integration into the language that gives rise to a number of unexpected and handy interactions with other language features. In this talk, you will learn about the most important of such interactions and will understand the mechanisms that underlie them, becoming able to realize the full potential of Scala macros in your libraries and applications.
YOU MAY ALSO LIKE:
- A new macro system for Scala - Intermediate (SkillsCast recorded in December 2016)
- Real World Kotlin Development Workshop (in London on 22nd - 23rd October 2019)
- Lightbend Akka for Scala - Professional (in London on 11th - 12th November 2019)
- Clojure eXchange 2019 (in London on 2nd - 3rd December 2019)
- Scala eXchange London 2019 (in London on 12th - 13th December 2019)
- Code Kata: Yilin Wei - Optics with Monocle (in London on 22nd October 2019)
- Don’t keep it to yourself - openness and honesty in the workplace (in London on 30th October 2019)
- Keynote: (Programming Languages) in Agda = Programming (Languages in Agda) (SkillsCast recorded in October 2019)
- Keynote: Haskell is a Great Host (SkillsCast recorded in October 2019)