Slide 1

Slide 1 text

Philipp Haller Scala • A statically-typed programming language that integrates object-oriented and functional programming (https://www.scala-lang.org/) • Concise – Modern, compact syntax – Powerful type inference • Fully interoperable with Java and JavaScript (Scala.js) – Also: beta version of native code compiler (Scala Native) • About as fast as Java • Pushes the boundaries of what is possible to express in a type-safe way given the above properties of the language 1

Slide 2

Slide 2 text

Philipp Haller Motivation for Using Scala • Scala is an excellent choice for implementing interpreters and type checkers – This is the main task in the labs – Language features of particular interest: case classes and pattern matching, tuples, higher-order functions, etc. • Scala has received the highest international award for its significant impact on both industrial software development and programming language research 
 (ACM SIGPLAN Programming Languages Software Award) • In addition, learning a new language… – is beneficial when studying the principles of programming languages – can make you a better programmer, regardless of the languages you are going to use for future tasks 2

Slide 3

Slide 3 text

Philipp Haller Latest RedMonk Ranking 3 Source: Stephen O’Grady, The RedMonk Programming Language Rankings: June 2024 
 https://redmonk.com/sogrady/2024/09/12/language-rankings-6-24/ Latest RedMonk Ranking (June 2024) Scala tied with Kotlin and ranked higher than Rust

Slide 4

Slide 4 text

Philipp Haller A Growing Job Market for Scala Developers 4 IEEE Spectrum ranking “The Top Programming Languages 2024” (“Jobs” preset) https://spectrum.ieee.org/top-programming-languages-2024 • Ranking of Scala benefits when availability of jobs is weighted higher (“Jobs” preset) • Scala is in the top 8 when non-general-purpose languages are excluded (SQL, SAS, HTML, Shell)

Slide 5

Slide 5 text

Philipp Haller Governance and Commercial Users • Scala was created by Prof. Martin Odersky at EPFL, Switzerland • The Scala language is a cooperative project of four groups (see Scala Governance): – the Scala Center at EPFL – the Scala 3 team in the research group of Prof. Martin Odersky (also at EPFL) – the Scala team at Akka – the Scala team at VirtusLab • Many individuals, companies, and organizations contribute as part of the broader Scala community – Scala community with forums, conferences, meetups, news, learning resources etc. • Prominent Scala users: – Airbnb, Akka, Apple, Databricks, Goldman Sachs, JPMorgan, Klarna, Lego, Microsoft, Morgan Stanley, Netflix, PayPal, Procter & Gamble, Shopify, Spotify, Starbucks, Tesla, Verizon, VirtusLab, Walmart, Walt Disney, Wolt, Zalando 5