• Вышла Scala 3. Это следующая версия языка, работа над которой велась более 8 лет более чем 100 разработчиками. В этот релиз попало 28 тысяч коммитов, 7400 пулл-реквестов и 4100 закрытых задач. Новый язык содержит в себе «последние исследования в теории типов, так же как и индустриальный опыт Scala 2». Перечислим лишь некоторые изменения в новой версии:
- Новый синтаксис без фигурных скобок. Индентация теперь имеет строгие правила и влияет на компиляцию.
- Ключевое слово
new
теперь опционально. - Implicit'ов больше нет, и теперь концепция разделена на несколько независимых частей, каждая из которых заточена под свои конкретные вещи: условия using, given-инстансы, extension-методы, неявные конверсии, контекстные функции.
- Перечисления.
- Пересечения и объеденения типов.
- Типы функций, зависящие от параметров.
- match-типы.
- trait'ы теперь могут иметь параметры.
- Классы, от которых можно наследоваться, теперь должны иметь модификатор
open
.
Подробный список новых возможностей и улучшений в Scala 3 можно найти здесь.
• Вышел новый черновик JEP: Reimplement Core Reflection on Method Handles. В нём предлагается реализовать рефлексию в Java поверх method handles, тем самым избавившись от одной лишней реализации рефлективного механизма, которые дублируют друг друга. Это уменьшит затраты на поддержку и разработку API в пакетах java.lang.reflect
и java.lang.invoke
.
• На сайте OpenJDK впервые появились сборки JDK под Apple M1.
• JetBrains объявил Kotlin Online Event в честь выхода Kotlin 1.5. Он состоится 25 мая.
• Вышла Scala 2.13.6.
• Вышли Spring Framework 5.3.7 и 5.2.15.
• Вышел JMH 1.31.