Header Image

Tomer Gabel

System Architect @ Wix

A programming junkie and computer history aficionado, Tomer’s been around the block a few times before settling at Wix as a system architect. In the last few of years he’s developed a major crush on Scala, promoting it within the Israeli software industry as part of Java.IL (Israeli Java user group) and Underscore (Israeli Scala user group) and organizing the annual Scalapeño conference in Tel-Aviv.


Type classes are a fundamental feature of Scala, which allows you to layer new functionality on top of existing types externally, i.e. without modifying or recompiling existing code. When combined with implicits, this is a truly remarkable tool that enables many of the advanced features offered by the Scala library ecosystem. In this talk we’ll go back to basics: how type classes are defined and encoded, and cover several prominent use cases. While geared towards beginners, a revisit of this topic may prove useful to veteran Scala developers as well.