bfpg / talks

Brisbane Function Programming Group talk ideas, scheduling & archival
https://talks.bfpg.org
Creative Commons Zero v1.0 Universal
4 stars 5 forks source link

Scalac Survival Guide #24

Closed benkolera closed 8 years ago

benkolera commented 9 years ago

As a programmer, tinkering with the implementation of the very language you work with (and think in) a uniquely satisfying endeavour. Scala offers lots of avenues to try this: you can author compiler plugins to perform static analysis, use macros to generate boilerplate, or modify the compiler to fix bugs or implement your own pet feature. More generally, thinking about the meta-aspects of the language invariably lead to a fresh perspective and deeper understanding that benefit your regular coding, too.

But all of these tasks can at times seem daunting, infuriating, or out of reach. This talk will issue you with the map, compass, flashlight, and roll of duct tape that you need to embark on this journey. It is drawn from the tools and techniques that I use on a daily basis when I'm working on the compiler.

Bring a Scala 2.11.6 REPL along if you want to code along, or skim the Reflection and Macro guides if you want to get a head start on some of the concepts we'll touch upon, or check out or Hacker's and Contributing guide to plan your first pull request.


BIO: Jason Zaugg once tinkered with the Scala compiler, got hooked, and now works full time on the Scala language at Typesafe.

retronym commented 8 years ago

@benkolera Sorry about the delay... Here's a suggested abstract. What duration do you have in mind? Maybe 45 mins?

Scalac Survival Guide

As a programmer, tinkering with the implementation of the very language you work with (and think in) a uniquely satisfying endeavour. Scala offers lots of avenues to try this: you can author compiler plugins to perform static analysis, use macros to generate boilerplate, or modify the compiler to fix bugs or implement your own pet feature. More generally, thinking about the meta-aspects of the language invariably lead to a fresh perspective and deeper understanding that benefit your regular coding, too.

But all of these tasks can at times seem daunting, infuriating, or out of reach. This talk will issue you with the map, compass, flashlight, and roll of duct tape that you need to embark on this journey. It is drawn from the tools and techniques that I use on a daily basis when I'm working on the compiler.

Bring a Scala 2.11.6 REPL along if you want to code along, or skim the Reflection and Macro guides if you want to get a head start on some of the concepts we'll touch upon, or check out or Hacker's and Contributing guide to plan your first pull request.


BIO: Jason Zaugg once tinkered with the Scala compiler, got hooked, and now works full time on the Scala language at Typesafe.

benkolera commented 8 years ago

Yeah; you can have anywhere from 30 minutes to an hour if you want it but 40-45 mins + questions is normally the sweet spot.. We're pretty flexible. :)

On Mon, 27 Jul 2015 at 17:01 Jason Zaugg notifications@github.com wrote:

@benkolera https://github.com/benkolera Sorry about the delay... Here's a suggested abstract. What duration do you have in mind? Maybe 45 mins? Scalac Survival Guide

As a programmer, tinkering with the implementation of the very language you work with (and think in) a uniquely satisfying endeavour. Scala offers lots of avenues to try this: you can author compiler plugins to perform static analysis, use macros to generate boilerplate, or modify the compiler to fix bugs or implement your own pet feature. More generally, thinking about the meta-aspects of the language invariably lead to a fresh perspective and deeper understanding that benefit your regular coding, too.

But all of these tasks can at times seem daunting, infuriating, or out of reach. This talk will issue you with the map, compass, flashlight, and roll of duct tape that you need to embark on this journey. It is drawn from the tools and techniques that I use on a daily basis when I'm working on the compiler.

Bring a Scala 2.11.6 REPL along if you want to code along, or skim the Reflection http://docs.scala-lang.org/overviews/reflection/overview.html and Macro http://docs.scala-lang.org/overviews/macros/usecases.html guides if you want to get a head start on some of the concepts we'll touch upon, or check out or Hacker's http://www.scala-lang.org/contribute/hacker-guide.html and Contributing https://github.com/scala/scala/blob/2.11.x/CONTRIBUTING.md guide to

plan your first pull request.

BIO: Jason Zaugg once tinkered with the Scala compiler, got hooked, and now works full time on the Scala language at Typesafe.

— Reply to this email directly or view it on GitHub https://github.com/bfpg/talks/issues/24#issuecomment-125107059.

benkolera commented 8 years ago

Awesome talk. Thanks @retronym !