Scala 3
3.7.2-RC1-bin-20250523-ee14905-NIGHTLY
Learn
Install
Playground
Find A Library
Community
Blog
Scala 3
Learn
Install
Playground
Find A Library
Community
Blog
Docs
API
Reference
New Types
Intersection Types
Union Types
Type Lambdas
Match Types
Dependent Function Types
Polymorphic Function Types
Enums
Enumerations
Algebraic Data Types
Translation of Enums and ADTs
Contextual Abstractions
Given Instances
Using Clauses
Context Bounds
Deferred Givens
Importing Givens
Other Forms Of Givens
Extension Methods
Right-Associative Extension Methods: Details
Implementing Type classes
Type Class Derivation
How to write a type class `derived` method using macros
Multiversal Equality
Context Functions
Implicit Conversions
By-Name Context Parameters
Relationship with Scala 2 Implicits
Metaprogramming
Inline
Compile-time operations
Macros
The Meta-theory of Symmetric Metaprogramming
Run-Time Multi-Stage Programming
Reflection
TASTy Inspection
Other New Features
Trait Parameters
Transparent Traits and Classes
Universal Apply Methods
Export Clauses
Opaque Type Aliases
Opaque Type Aliases: More Details
Named Tuples
Open Classes
Parameter Untupling
Kind Polymorphism
The Matchable Trait
The @threadUnsafe annotation
The @targetName annotation
New Control Syntax
Optional Braces
Safe Initialization
TypeTest