Универсальные дженерики уже попали в репозиторий Valhalla. И там стоит релиз Java 18! Естественно, preview. Значит по логике мы сможем писать
#Java18 #Java20
List<int> в Java 20. Поскорей бы.#Java18 #Java20
GitHub
universal type variables: initial prototype · openjdk/valhalla@3e896fa
Reviewed-by: mcimadamore
📆 Приблизительный план выхода preview-фич в JDK:
JDK 19 (2022):
• Template strings (Amber)
JDK 20 (2023):
• Deconstruction patterns (Amber)
• Virtual threads (Loom)
• Structured concurrency API (Loom)
• Value classes (Valhalla)
JDK 21 (2023):
• Primitive classes (Valhalla)
• Universal generics (Valhalla)
• Vector API (Panama)
2024:
• More structured concurrency (Loom)
• More/custom patterns (Amber)
2025:
• Specialized generics (Valhalla)
P.S. Это личные догадки Николая Парлога, никаких гарантий, что именно так и будет.
#valhalla #loom #amber #panama #java19 #java20 #java21
JDK 19 (2022):
• Template strings (Amber)
JDK 20 (2023):
• Deconstruction patterns (Amber)
• Virtual threads (Loom)
• Structured concurrency API (Loom)
• Value classes (Valhalla)
JDK 21 (2023):
• Primitive classes (Valhalla)
• Universal generics (Valhalla)
• Vector API (Panama)
2024:
• More structured concurrency (Loom)
• More/custom patterns (Amber)
2025:
• Specialized generics (Valhalla)
P.S. Это личные догадки Николая Парлога, никаких гарантий, что именно так и будет.
#valhalla #loom #amber #panama #java19 #java20 #java21
👍9❤1👏1
New candidate JEP: 431: Sequenced Collections
https://openjdk.org/jeps/431
Introduce new interfaces to represent collections with a defined encounter order. There are uniform APIs for accessing first and last elements, and for processing elements in reverse order.
#jep #java20
https://openjdk.org/jeps/431
Introduce new interfaces to represent collections with a defined encounter order. There are uniform APIs for accessing first and last elements, and for processing elements in reverse order.
#jep #java20
🤔5🤩2🤨1
Всего месяц остался до первой фазы Rampdown, а в JDK 20 до сих пор нет ни одного JEP'а. Понятно, что в релиз не могут не попасть всякие вторые инкубаторы и восьмые превью. Т.е. однозначно будут:
• JEP 433: Pattern Matching for switch (Fourth Preview)
• JEP 432: Record Patterns (Second Preview)
• JEP 434: Foreign Function & Memory API (Second Preview)
• JEP XXX: Virtual Threads (Second Preview)
• JEP XXX: Structured Concurrency (Second Incubator)
А вот новые фичи что-то не подвозят. Для меня наибольший интерес представляет JEP 430: String Templates (Preview), и он сейчас в активной разработке. Надеюсь, что он всё-таки успеет.
Второй – JEP 431: Sequenced Collections, и он тоже пока в разработке.
Ещё может попасть JEP 429: Scoped values (Incubator). Раньше он назывался Extent-Local Variables.
Итого, будет где-то 5-8 JEP'ов. Релиз будет вполне полноценным.
Ну и не забывайте, что даже если в релизе нет вообще ни одного JEP'а, то в любом случае присутствуют тысячи мелких улучшений, оптимизаций, исправлений багов и т.д. Например, будет ещё большее сокращение потребляемой памяти у G1. Так что повод обновляться до Java 20 будет!
#java20
• JEP 433: Pattern Matching for switch (Fourth Preview)
• JEP 432: Record Patterns (Second Preview)
• JEP 434: Foreign Function & Memory API (Second Preview)
• JEP XXX: Virtual Threads (Second Preview)
• JEP XXX: Structured Concurrency (Second Incubator)
А вот новые фичи что-то не подвозят. Для меня наибольший интерес представляет JEP 430: String Templates (Preview), и он сейчас в активной разработке. Надеюсь, что он всё-таки успеет.
Второй – JEP 431: Sequenced Collections, и он тоже пока в разработке.
Ещё может попасть JEP 429: Scoped values (Incubator). Раньше он назывался Extent-Local Variables.
Итого, будет где-то 5-8 JEP'ов. Релиз будет вполне полноценным.
Ну и не забывайте, что даже если в релизе нет вообще ни одного JEP'а, то в любом случае присутствуют тысячи мелких улучшений, оптимизаций, исправлений багов и т.д. Например, будет ещё большее сокращение потребляемой памяти у G1. Так что повод обновляться до Java 20 будет!
#java20
👍4🥱3🔥1🤯1