The Scala Programming Language for your Windows PC

Scala

Scala

  -  130 MB  -  Open Source
  • Latest Version

    Scala 2.13.16 LATEST

  • Review by

    Daniel Leblanc

  • Operating System

    Windows 7 / Windows 8 / Windows 10 / Windows 11

  • User Rating

    Click to vote
  • Author / Product

    Scala Team / External Link

  • Filename

    scala-2.13.16.msi

Scala combines object-oriented and functional programming in one concise, high-level language. Scala's static types help avoid bugs in complex applications, and its JVM and JavaScript runtimes let you build high-performance systems with easy access to huge ecosystems of libraries. Download Scala for Desktop today!

Scastie is Scala + sbt in your browser! You can use any version of the app, or even alternate backends such as Dotty, Scala.js, Scala Native, and Typelevel Scala. You can use any published library. You can save and share Scala programs/builds with anybody.

The Library Index (or Scaladex) is a representation of a map of all published libraries. With Scaladex, a developer can now query more than 175,000 releases of libraries. Scaladex is officially supported by Scala Center.

Features and Highlights

SEAMLESS JAVA INTEROP
It runs on the JVM, so Java and Scala stacks can be freely mixed for totally seamless integration.

TYPE INFERENCE
So the type system doesn’t feel so static. Don’t work for the type of system. Let the type of system work for you!

CONCURRENCY & DISTRIBUTION
Use data-parallel operations on collections, use actors for concurrency and distribution, or futures for asynchronous programming.

TRAITS
Combine the flexibility of Java-style interfaces with the power of classes. Think principled multiple-inheritance.

PATTERN MATCHING
Think “switch” on steroids. Match against class hierarchies, sequences, and more.

HIGHER-ORDER FUNCTIONS
Functions are first-class objects. Compose them with a guaranteed type of safety. Use them anywhere, pass them to anything.

Note: Make sure you have the Java JDK installed.

Also Available: Download Scala for Mac

  • Scala 2.13.16 Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    Scala 2.13.16 Screenshot 1

What's new in this version:

Breaking change:
- On the empty string, .tail and .init now throw (instead of returning the empty string)
- This is a bugfix, but be aware that existing code might, perhaps inadvertently, be relying on the old behavior

Compatibility:
- Support Scala 3.6 in TASTy reader
- Support JDK 24 in optimizer (via ASM upgrade)

REPL:
- REPL: JLine 3.27.1 (was 3.26.3) and on Windows use JNI not JNA
- These upgrades hopefully won't be noticed, but, REPL users on Windows take note
- JNA is no longer a dependency of scala-compiler.jar

Align with Scala 3:
- Under -Xsource:3, deprecate infix named args

Errors and warnings:
- Fix 2.13.15-only false positives with -Wunused:patvars

Collections:
- Do not use rangeHash when rangeDiff is 0
- This may affect fragile code relying on ordering of hash-based collections
- Deprecate collection.mutable.AnyRefMap
- Since Scala 2.13.0 it has no performance advantage over collection.mutable.HashMap