Y1zkhkjonjrr1ftgloiv
1 DAY COURSE

Compile Scala Faster with Iulian Dragos and Mirco Dotta

Topics covered at FAST-SCALA-01-01
View Schedule & Book More dates available

Next up:

Are you an advanced Scala developer looking to speed things up? If so, this course is for you! Join Iulian and Mirco on this one day dive into the Scala compiler!

Speed is key and this course is ready to show you exactly how to fix those lagging compilation times.

Learn how to:

  • Understand what the compiler does
  • Know when something is off and where to investigate
  • Know how to fix pathological compilation times

About the Authors

Mirco Dotta

Co-founder of a stealth mode startup aiming at revolutionising Scala developers' life. Mirco has 10+ year experience with Scala, and also has extensive knowledge on Akka, Lagom, Playframework, and Sbt. Before founding his own company, he worked at Lightbend (formerly known as Typesafe), where he wore different hats: from engineering, to consulting, and (fun fact) even sales! He is a certified Lightbend trainer for Akka, Playframework, and Scala. He loves meeting people and sharing experiences, so don't hesitate to say hi when you see him. In his freetime, he plays chess and studies wine - both theory and practice! :)

Iulian Dragos

Iulian Dragoș dreams about a world where the Scala programming language is the default choice for new projects. He learned Scala by writing the compiler backend for it during his PhD at EPFL, back in 2004, and he was the first employee of Lightbend (formerly Typesafe). At Lightbend he helped the company grow from 5 to 85 employees, playing the role of engineer, technical lead, consultant, trainer or sales engineer. Iulian is a frequent speaker at conferences and actively contributing to several open-source projects.

Introduction

  • Problem breakdown
  • Goals

The Scala Compiler

  • Compilation pipeline, compiler phases
  • ASTs, Symbols and Types
  • Typing Trees
  • Macros
  • Plugins

Measuring Compiler Performance

  • Know what to measure
  • Measure outside of sbt
  • JVM Performance
  • Tools
  • Case study

Where Time is Spent in the Compiler

  • What phases are time consuming?
  • Tools and processes
  • Case study

Audience

If you are a Scala developer who is interested in improving your compilation times this course is for you!

Prerequisites

In order to gain the most from this course attendees will need to have a good understanding of Scala (implicits, macros, type classes etc) and familiarity with command line tools.

Overview

Are you an advanced Scala developer looking to speed things up? If so, this course is for you! Join Iulian and Mirco on this one day dive into the Scala compiler!

Speed is key and this course is ready to show you exactly how to fix those lagging compilation times.

Learn how to:

  • Understand what the compiler does
  • Know when something is off and where to investigate
  • Know how to fix pathological compilation times

About the Authors

Mirco Dotta

Co-founder of a stealth mode startup aiming at revolutionising Scala developers' life. Mirco has 10+ year experience with Scala, and also has extensive knowledge on Akka, Lagom, Playframework, and Sbt. Before founding his own company, he worked at Lightbend (formerly known as Typesafe), where he wore different hats: from engineering, to consulting, and (fun fact) even sales! He is a certified Lightbend trainer for Akka, Playframework, and Scala. He loves meeting people and sharing experiences, so don't hesitate to say hi when you see him. In his freetime, he plays chess and studies wine - both theory and practice! :)

Iulian Dragos

Iulian Dragoș dreams about a world where the Scala programming language is the default choice for new projects. He learned Scala by writing the compiler backend for it during his PhD at EPFL, back in 2004, and he was the first employee of Lightbend (formerly Typesafe). At Lightbend he helped the company grow from 5 to 85 employees, playing the role of engineer, technical lead, consultant, trainer or sales engineer. Iulian is a frequent speaker at conferences and actively contributing to several open-source projects.

Program

Introduction

  • Problem breakdown
  • Goals

The Scala Compiler

  • Compilation pipeline, compiler phases
  • ASTs, Symbols and Types
  • Typing Trees
  • Macros
  • Plugins

Measuring Compiler Performance

  • Know what to measure
  • Measure outside of sbt
  • JVM Performance
  • Tools
  • Case study

Where Time is Spent in the Compiler

  • What phases are time consuming?
  • Tools and processes
  • Case study
Audience

Audience

If you are a Scala developer who is interested in improving your compilation times this course is for you!

Prerequisites

In order to gain the most from this course attendees will need to have a good understanding of Scala (implicits, macros, type classes etc) and familiarity with command line tools.