Scala

Object-functional programming

100% free · no signup to read 6 chapters Programming language

Created

2004 by Martin Odersky at EPFL

Type

Object-functional, statically typed

Runs on

JVM (also JS, Native via Scala.js/Scala Native)

Current version

Scala 3 (2021)

Powers

Apache Spark, Kafka, LinkedIn

Philosophy

Object-oriented + functional in one

File extension

.scala

Best for

Data engineering, Big Data, functional programming

What is Scala?

Scala combines object-oriented and functional programming on the JVM. Created by Martin Odersky in 2004, it powers Apache Spark — the most widely used Big Data processing engine.

Why Scala?

Scala lets you write concise, type-safe code that runs on the JVM and interops with Java libraries. Its functional features make it ideal for data pipelines and concurrent systems.

Feature Scala Java Kotlin
Functional programming First-class Limited Good
Verbosity Very concise Verbose Concise
Big Data Spark, Kafka Hadoop (legacy) Limited
Type inference Excellent Limited Good
Learning curve Steep Medium Medium

What you'll learn

Chapter What you'll know
Introduction What Scala is, how it runs
Syntax Vals, vars, functions, collections
OOP Classes, traits, case classes
FP Immutable data, higher-order functions

Start with introduction.