
Conference40min
Eternal Sunshine of the Spotless Macro
This talk explores the diverse forms of metaprogramming in modern programming languages, from Ruby’s eigenclasses to Groovy AST transformations, and highlights the growing adoption of macros—powerful metaprogramming features inspired by Lisp—in languages such as Julia, Elixir, Rust, and Scala.

Andrea MocciSoftware Institute, Università della Svizzera italiana
talkDetail.whenAndWhere
Friday, November 7, 11:25-12:05
Room 6 - Olympias
talks.roomOccupancytalks.noOccupancyInfo
Programming languages are evolving faster than ever, frequently introducing new features to support different programming techniques. One such technique is metaprogramming, broadly defined as the ability of programs to manipulate other programs as data. Since this concept can take many forms, we will first explore the diverse flavors of metaprogramming in modern languages, from Ruby’s eigenclasses to Groovy AST transformations—and as a bonus, you’ll have a reason to stop saying that “Java has reflection.” Then, we will dive into one of the most powerful and cool metaprogramming features, macros, that - standing from the shoulders of Lisp - is now gaining traction in languages like Julia, Elixir, Rust, and Scala.

Andrea Mocci
Andrea is a Junior Group Leader at CodeLounge, the software engineering R&D group at the Software Institute, headed by Dr. Marco D’Ambros and Prof. Dr. Michele Lanza. His main responsibilities include being the tech lead for CodeLounge team and projects. In the context of the REFLEX project, he has fun with machine learning and natural language processing to support economists and social scientists in their research.
Passionate about programming languages, Andrea has a particular love for functional programming. While he doesn’t publish as often these days, he still enjoys speaking at developer conferences, including Scala Days Seattle (2023) and Voxxed Days Zurich (2024). In the past, Andrea has been a postdoctoral researcher at MIT and USI Lugano, and his alma mater is Politecnico di Milano, where he’s got a PhD advised by Prof. Carlo Ghezzi.
Passionate about programming languages, Andrea has a particular love for functional programming. While he doesn’t publish as often these days, he still enjoys speaking at developer conferences, including Scala Days Seattle (2023) and Voxxed Days Zurich (2024). In the past, Andrea has been a postdoctoral researcher at MIT and USI Lugano, and his alma mater is Politecnico di Milano, where he’s got a PhD advised by Prof. Carlo Ghezzi.
talkDetail.shareFeedback
talkDetail.feedbackNotYetAvailable
talkDetail.feedbackAvailableAfterStart
talkDetail.signInRequired
talkDetail.signInToFeedbackDescription
occupancy.title
occupancy.votingNotYetAvailable
occupancy.votingAvailableBeforeStart
talkDetail.signInRequired
occupancy.signInToVoteDescription
comments.speakerNotEnabledComments