The Scala Programming Language for your Windows PC

Scala

Scala 3.8.3

  -  93.1 MB  -  Open Source
  • Latest Version

    Scala 3.8.4

  • Operating System

    Windows 7 / Windows 8 / Windows 10 / Windows 11

  • User Rating

    Click to vote
  • Author / Product

    Scala Team / External Link

  • Filename

    scala3-3.8.3.msi

Sometimes latest versions of the software can cause issues when installed on older devices or devices running an older version of the operating system.

Software makers usually fix these issues but it can take them some time. What you can do in the meantime is to download and install an older version of Scala 3.8.3.


For those interested in downloading the most recent release of Scala or reading our review, simply click here.


All old versions distributed on our website are completely virus-free and available for download at no cost.


We would love to hear from you

If you have any questions or ideas that you want to share with us - head over to our Contact page and let us know. We value your feedback!

Why is this app published on FileHorse? (More info)
  • Scala 3.8.3 Screenshots

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

    Scala 3.8.3 Screenshot 1

What's new in this version:

Release highlights:
- Add support for local coverage on and off with // $COVERAGE-OFF$ and // $COVERAGE-ON$
- Deprecate for removal -print-lines compiler setting
- Add safe mode capture checking extension
- Port the Scala2 JVM backend optimizer

Other changes and fixes:
Desugaring:
- Fix

Documentation:
- Fix little errors in the API documentation
- CC Language Reference: Rename cap to any/fresh

Enums:
- Deprecate override class, improve checks
- Fix Java enum forwarders to pull from companion on initialization
- Experimental: Capture Checking:
- Rename caps.cap to caps.any
- Track global capabilities
- Treat local mutable vars as capabilities
- Fix Crashes when Capture-set Parameters Conflict with Terms
- Replace "cannot be included in" by "cannot flow into" in error messages
- CC: Add field captures to self-type constraints
- Add uses clauses for templates
- Drop special code paths for objects
- Do not consider generated getters to be update def
- Under cc, mark inferred type arguments to inline methods with an @inferred annotation
- Handle call-by-name types in bad locations under cc
- Fixes for global capabilities
- Warn if reach capability in result will likely cause leakage
- Make <fluid> decorations replace existing capture sets
- Make TypeMaps in Setup work correctly for fresh
- For a limited time, also recognize caps.cap
- Fix closure typing
- Map class capture sets via as-seen-from with prefix of created types
- Drop SafeMode attribute in Tasty
- Fix @assumeSafe addition in safe mode
- Disallow @assumeSafe under safe mode

Experimental: Modularity:
- Fix nested desugaring of applied constructor types

Exports:
- Add ctor proxies before exports

Inline:
- Make containsOuterRefsAnywhere follow aliases
- Find annotation args in inline expansion
- Also substitute symbols in case bindings symbols

JDK:
- Skip over JEP 445 compact compilation units
- Handle MissingType during Erasure phase

JVM Backend:
- Simplify JVM interface list emission, remove a mini-phase
- Don't generate bridge methods for inaccessible Java package-private methods
- Revise isLocalToCompilationUnit
- Enforce JVM UTF-8 string limits in the backend
- Fix class super-call invokespecial owner

Linting:
- Extension check handles hiBound of opaque type
- Distrust tree pos for patvar lint
- Move second CheckUnused after pattern matcher
- Unused lint ignores args to ctor of enclosing class
- Check inline expansion for exclusion

Metaprogramming:
- Fix: Fix incremental compilation of (some unquoted) macros

Named Tuples:
- Don't try checking for ambiguous single-element tuples when in types
- Fix "NamedTuple type in match is parsed as named pattern"
- Fix "Named pattern matching doesn't work in val statements or for generators"
- Fix false exhaustivity warning for pattern returning NamedTuple

Overloading:
- Prefer non-extension to extension

Parser:
- Check seen for TypeParamRef in TypeSizeAccumulator
- End of new expr never shrinks
- Use toVector for XML literal sequences
- Pattern Matching:
- Emit unchecked warnings for trait patterns

Presentation Compiler:
- Bugfix: inline value false-positive shadowing with lambda params
- Test hover on backticked identifiers with whitespace
- Inlining interpolated variables
- Bugfix: treat self types as parent types
- Feat(pc): add closing labels inlay hints
- Coursier dependency imports should have lexicographic ordering
- Bugfix: Fix various minor presentation compiler issues
- Fix negative activeParameter in signature help
- Closes
- Fix opaque types displayed as Nothing & Any in hover and signature help

REPL:
- Skip module-info.class files during REPL tab-completion
- Fix REPL usage of macros loaded via :dep and :jar
- Make REPL type echo-ing use partially qualified names where made possible by imports
- Force REPL to not evaluate LazyList

Reporting:
- Check -Werror on summarize
- Fixes
- Ignore resetting if preferPrevious
- Enhance WInferUnion to not warn propagated explicit union types
- Improve diagnostic message for unnecessary trailing underscore in eta-expansion
- More descriptive "not found" message when type/term exists with the expected term/type name
- Warn on Scala 2 auto-apply if loosely nullary
- Fix printing references to nested objects
- Add error note for type mismatch involving blocks without last expression
- Drop -print-lines option
- Don't suggest invisible members of root imports

Runner:
- Bump Scala CLI to v1.12.3 (was v1.12.2)
- Bump Scala CLI to 1.12.4 (was 1.12.3)

Rewrites:
- Accommodate ArrowAssoc in infix named arg migration

Scaladoc:
- Init MacroClassLoader in scaladoc
- Scaladoc Overload Method Link Fix
- Fix duplicate member entries in Scaladoc generation
- Scaladoc Tests for CC
- Skip generation of API pages when building reference docs
- Docs: Enforce links checks in the generated docs

Scala.js:
- Fix issues in presentation compiler when using Scala JS
- Fix issues with Scala JS and the presentation compiler

Settings:
- Don't enable compact annotations under 2.13.

Standard Library:
- Remove incorrect equals implementations from ArrayBuilder
- Use StringBuilder intead of StringBuffer in Regex
- Update StringOps.* implementation

TASTy format:
- Don't absolutize sources outside of the sourceroot in TASTy

Tooling:
- Fix behavior of -Ydump-sbt-inc

Typer:
- Never widen constant type on selector type in matches
- Preserve insertion order when balancing And/OrType
- Improve ref check of constructors

Quotes:
- Fix