whatisgithub

What is scala?

scala/scala — explained in plain English

Analysis updated 2026-06-24

14,450ScalaAudience · developerComplexity · 5/5Setup · hard

In one sentence

This is the source code for the Scala 2 compiler and standard library, the tools that convert Scala programs into JVM bytecode, used by teams wanting expressive functional and object-oriented programming on the Java platform.

Mindmap

mindmap
  root((Scala 2))
    Repo Contents
      Compiler
      Standard library
      REPL
      Test suite
    Language Style
      Object-oriented
      Functional
      JVM based
    Contribution
      Bug tracker
      Pull requests
      CLA required
    Branches
      2.13.x active
      2.12.x minimal
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Contribute a bug fix to the Scala 2 compiler by forking the repository, making a change on the 2.13.x branch, and submitting a pull request.

USE CASE 2

Study the Scala 2 standard library source code to understand how core data structures and APIs are implemented in Scala.

What is it built with?

ScalaJavaJVM

How does it compare?

scala/scalaakka/akka-coreplayframework/playframework
Stars14,45013,27512,624
LanguageScalaScalaScala
Setup difficultyhardhardmoderate
Complexity5/54/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1day+

Requires signing a contributor license agreement before changes are merged, target the 2.13.x branch for active development.

So what is it?

This repository is the source code for Scala 2, a programming language that runs on the Java Virtual Machine (the software that executes Java programs). Scala blends two programming styles that are sometimes thought of as opposites: object-oriented programming, where code is organized around objects and their behaviors, and functional programming, where computation is expressed as a series of transformations on data with minimal side effects. The result is a language popular with teams that need Java's performance and ecosystem but want more expressive syntax and stronger tools for handling complexity. This specific repository holds the Scala 2 compiler and standard library. The compiler is the program that reads Scala source code and converts it into something the Java Virtual Machine can execute. The standard library is a collection of built-in tools and data structures that all Scala programs can use without installing anything extra. A separate repository handles Scala 3, which is the newer major version with a redesigned compiler. Contributing to this project follows a structured process. You file or find a bug in a dedicated issue tracker at scala/bug, fork the repository to your own GitHub account, make your changes, and submit a pull request. The project also requires signing a contributor license agreement before any changes are merged, which is a legal document protecting the project's open-source status. There is a Discord server and a Discourse forum where contributors coordinate work. The codebase is organized into clearly labeled directories: the compiler, the standard library, the reflection API, the test suite, the documentation tool, the REPL (a tool that lets you run Scala code interactively one line at a time), and the formal language specification. Most ongoing development targets the 2.13.x branch, with version 2.12.x receiving only minimal maintenance.

Copy-paste prompts

Prompt 1
Walk me through how to set up a local Scala 2 compiler build from the scala/scala repository so I can test a compiler change.
Prompt 2
How does the Scala 2 compiler represent a case class internally, and which source files in the compiler directory should I look at?
Prompt 3
What is the correct process for filing a Scala 2 bug, making a fix, and submitting it as a pull request to the scala/scala repository?

Frequently asked questions

What is scala?

This is the source code for the Scala 2 compiler and standard library, the tools that convert Scala programs into JVM bytecode, used by teams wanting expressive functional and object-oriented programming on the Java platform.

What language is scala written in?

Mainly Scala. The stack also includes Scala, Java, JVM.

How hard is scala to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is scala for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.