Skip to content
0:00 / 0:00

#type-levelprogramming#implicits#scalacompiler

Type-Level Programming in Scala, part 1 | Rock the JVM

Rock the JVM

27K subscribers • 62 videos on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.

Advanced. Deep dive for people who know the field.

18K views6 years ago1 recommendation

Programming languagesScalaCompilers and interpreters

An advanced tutorial on using the Scala compiler and implicit methods to solve and validate problems at compile time.

Written version: blog.rockthejvm.com/type-level-programming-part-1/ Part 2 here: youtube.com/watch?v=EGAJJpGODHg This video is a TOUGH one. We'll learn to use the power of the Scala compiler to solve and validate problems for us, before the code can even compile. This video (and the subsequent parts of this mini-series) is for the advanced Scala programmer. At a minimum, I'll need you to know how to define type aliases and how implicit methods work in Scala. We'll take implicit methods to another level and we will guide the compiler to build instances of certain types that mean particular things to us (for example, whether a number is smaller than another). We discuss implicit methods in detail in the Rock the JVM advanced Scala course: rockthejvm.com/p/advanced-scala If you're busy, you can take the Scala at Light Speed downloadable 2-hour course, which is FREE: rockthejvm.com/p/scala-at-light-speed Follow Rock the JVM on: LinkedIn: linkedin.com/company/rockthejvm Twitter: twitter.com/rockthejvm Blog: rockthejvm.com/blog ------------------------------------------------------------------------- Home: rockthejvm.com ------------------------------------------------------------------------- Contents: intro the small reflection boilerplate we won't use intro to type-level programming natural numbers as types (Peano) less-than as a type the first axiom with implicits the second axiom with implicits how the compiler "proves" less-than-equal as a type

Why it's here

1 person recommends this

u/danielciocirlanin r/scala • Recommends

Type-Level Programming in Scala, Part 1