Repolode
scala

scala/scala

Компилятор Scala 2, стандартная библиотека и спецификация языка, а также рекомендации по внесению изменений в кодовую базу Scala 2.

Звёзды
14,539
Форки
3,262
Открытые issues
25
Последний коммит
3 дня назад

Что это?

В этом репозитории находится исходный код Scala 2: стандартная библиотека, компилятор и спецификация языка. Здесь ведётся разработка Scala 2; Scala 3 разрабатывается в отдельном репозитории.

Кодовая база разделена на исходные деревья library, reflect и compiler, а также вспомогательные модули: REPL, scaladoc, scalap и параллельный тестовый фреймворк partest. Сборка выполняется с помощью sbt и использует бутстрэп-процесс, в котором компилятор пересобирается с помощью самого себя.

Ошибки Scala 2 отслеживаются в отдельном репозитории scala/bug. Участникам предлагается подписать Scala CLA и открывать pull request из форка этого репозитория.

Ключевые возможности

  • 01Содержит исходный код стандартной библиотеки Scala 2, компилятора и спецификации языка.
  • 02Сборка выполняется с помощью sbt; доступны команды для компиляции, запуска REPL и публикации локально.
  • 03Включает REPL, инструмент документирования scaladoc, декомпилятор class-файлов scalap и тестовый фреймворк partest.
  • 04Поддерживает бутстрэп-сборку, при которой компилятор компилирует сам себя.
  • 05Наборы тестов включают partest, тесты JUnit и ScalaCheck.

Сценарии использования

  • Внесение исправлений и новых возможностей в стандартную библиотеку или компилятор Scala 2.
  • Сборка локального дистрибутива Scala 2 для тестирования изменений компилятора.
  • Изучение реализации компилятора и стандартной библиотеки Scala 2.
  • Изучение исходного кода спецификации языка.

Быстрый старт

  1. 1

    Установите Java SDK (базовая версия — 8; более новые версии, например 17 или 21, также подходят для локальной разработки)

  2. 2

    Установите sbt

  3. 3

    Запустите сеанс sbt из каталога проекта

    sbt
  4. 4

    Скомпилируйте все подпроекты в сеансе sbt

    compile

Что важно знать

  • В этом репозитории находятся исходный код компилятора, библиотеки и спецификаций Scala 2; он предназначен для участников разработки, а не для конечных пользователей.
  • Windows не имеет надежной поддержки, и может потребоваться Cygwin.
  • Большинство изменений следует направлять в 2.13.x, поскольку версия 2.12.x поддерживается лишь в минимальном объеме.

Темы

#scala#scala-compiler#jvm#functional-programming#sbt#programming-languages#jvm-languages#object-oriented-programming#scala-library#scala-programming-language

Частые вопросы

Что такое scala?
Компилятор Scala 2, стандартная библиотека и спецификация языка, а также рекомендации по внесению изменений в кодовую базу Scala 2. В этом репозитории находится исходный код Scala 2: стандартная библиотека, компилятор и спецификация языка. Здесь ведётся разработка Scala 2; Scala 3 разрабатывается в отдельном репозитории.
scala можно использовать бесплатно? Какая у него лицензия?
scala распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
scala всё ещё поддерживается?
Активно поддерживается. Последний коммит в scala — 4 нояб. 2026 г..
Для чего можно использовать scala?
Внесение исправлений и новых возможностей в стандартную библиотеку или компилятор Scala 2. Сборка локального дистрибутива Scala 2 для тестирования изменений компилятора. Изучение реализации компилятора и стандартной библиотеки Scala 2. Изучение исходного кода спецификации языка.
Как установить scala?
Установите Java SDK (базовая версия — 8; более новые версии, например 17 или 21, также подходят для локальной разработки) Установите sbt Запустите сеанс sbt из каталога проекта: sbt Скомпилируйте все подпроекты в сеансе sbt: compile
Где скачать scala?
Исходный код и инструкции по установке — на GitHub: https://github.com/scala/scala

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

sbt — интерактивный инструмент сборки для проектов на Scala, Java и других JVM-языках; его исходный код распределён по нескольким репозиториям GitHub.

5 тыс.+4 за неделю1,1 тыс.ScalaApache-2.0Активно поддерживаетсяОбновлён 17 часов назад

Pharo — чисто объектно-ориентированный язык программирования в духе Smalltalk и живая среда разработки со встроенной IDE и инструментами уровня ОС.

Инструменты разработчика#smalltalk#programming-language#live-programming
1,5 тыс.+3 за неделю434SmalltalkOtherОбновлён 14 часов назад

Odin — универсальный язык системного программирования с ориентацией на данные, встроенной стандартной библиотекой и позиционированием как альтернатива C.

12,3 тыс.+21 за неделю1,2 тыс.OdinZlibОбновлён 7 часов назад