addressalign-toparrow-leftarrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobegmailgooglegroupsimageimagesinstagramlinklocation-pinm-swarmSearchmailmessagesminusmoremuplabelShape 3 + Rectangle 1outlookpersonJoin Group on CardStartprice-ribbonImported LayersImported LayersImported Layersshieldstartickettrashtriangle-downtriangle-uptwitteruseryahoo

Applied Materialization: When Macros Meet Implicits with Eugene Burmako

Eugene Burmako is a PhD student at EPFL. His recent contribution to Scala was implementing macros, available in Scala 2.10.

A peculiarity of Scala macros is the fact that they are very good at synergizing with the language features and the type system of vanilla Scala. The most impressive example of such a synergy are implicit macros that combine the flexibility of implicits and the code generation power of compile-time metaprogramming without compromising understandability and type safety.

The talk begins with a simple serializer how-to, then generalizing it without sacrificing performance. Eugene will demonstrate a trick of two from macrology 101, and then discuss matching the performance of hand-crafted serializers without going through the trouble of actually writing any boilerplate code.

Having familiarized ourselves with macros, Eugene will push the boundaries of conciseness by using materialization, a new technique introduced in Scala 2.10.2. With a couple of materializing macros in place, the amount of code necessary to make a class serializable will be reduced to absolute zero.

The talk will conclude with the details of interaction between materializers and type inference and how that allowed us to address a challenging theoretical problem.


  • 6:30-7:00 - networking
  • 7:00-7:10 - announcements etc
  • 7:10-~8:40 - Eugene talk
  • 8:40-9:00 - networking

Join or login to comment.

  • Johann S.

    It's great hearing from the source. Thank you for visiting, Eugene. I appreciated the technical detail, revealed step-by-step, and appreciated the insight into bleeding-edge Scala developments.

    2 · June 14, 2013

  • John G.

    Missed the train : /

    June 13, 2013

  • A former member
    A former member

    Can't make it into the city tonight. Opening up my spot.

    June 13, 2013

  • Shingo O.

    sorry, my duty doesn't release me.... :x

    June 13, 2013

  • A. P. M.

    Local emergency, can't make it up tonight.

    June 13, 2013

  • Peter P.

    Explicitly interested.

    June 12, 2013

  • Andrii

    oh, SF is too far away (

    June 10, 2013

  • Kumar P.

    Really need to wrap my head around Implicits... especially while debugging others lib

    June 10, 2013

  • Ryan D.

    Is the talk going to start at 7:00 or closer to 7:30 PM?

    June 10, 2013

    • Ryan D.

      Honesty, it make things easier for me if the talk started at 7:30 (coworker has a going away shindig ending at 7) ... but, that's just me.

      June 10, 2013

    • Vlad P.

      Ryan, since the complexity will be increasing gradually (exponentially), and the first 5-10 minutes will be dedicated to announcement, you are probably okay

      June 10, 2013

  • Prasad M.

    Getting to know scala and love it

    1 · May 30, 2013

    • Vlad P.

      Prasad, great to see you here!

      June 9, 2013

    • Ryan D.

      ditto: it's a great language once you get passed the initial "holy-crap-so-many-­lang-constructs" hump. It's utterly brilliant how all of the language capabilities sort of mesh together.

      June 10, 2013

  • Richard W.

    Darn - would have liked to have made it, but getting up to SF on Thursday is going to be impossible for me in time for this. Next time hopefully.

    June 9, 2013

  • Kumar P.

    Really need to wrap my head around Implicits... especially while debugging others lib

    June 7, 2013

  • Ishan C.

    Good to have Eugene himself talking about Scala Macros. It is good to see the power of macros being made available in Scala in well thought out steps.

    1 · June 7, 2013

  • Jeff C.

    Too bad this is so close to Scala Days--I won't quite be back yet! Sounds like a fun talk.

    June 6, 2013

  • kasi

    would luv to be there

    May 30, 2013

  • richard v.

    were the fun is, at the meeting

    May 30, 2013

Our Sponsors


    Online and on-site training

  • Box

    Space to host meetups and food sponsorship for meetups hosted at Box HQ

  • Artima

    Scala Books

  • IntelliJ

    Free copies of IDEA given away each meetup

  • Clari Inc.

    Space for hosting as well as food and other arrangements on meetups.

People in this
Meetup are also in:

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy