Sortie de Scala 3.0
(scala-lang.org)-
Première mise à jour de version en 8 ans depuis la 2.0
-
Les macros ont été largement remaniées, rendant la métaprogrammation possible
→ Inline, package pour la compilation, blocs de code quoted, Reflection API
- Nouvelles syntaxes
→ Syntaxe Quiet (sans parenthèses autour des conditions) pour if, while, for, etc.
→ Le mot-clé new peut être omis
→ Optional Braces
- Améliorations du typage
→ Enums, Opaque Type Aliases
→ Intersection & Union Types
→ Dependent Function Types
→ Polymorphic Function Types
→ Type lambdas
→ Match Types
- Repenser la programmation orientée objet
→ Renforcement à la fois du fonctionnel et de l’orienté objet
→ Les traits peuvent recevoir des paramètres comme des classes
→ Open Class pour l’extension
→ Transparent Traits
→ Composition over Inheritance en s’appuyant sur la syntaxe export
→ Suppression des NPE : Explicit Nulls, Safe Initialization
Aucun commentaire pour le moment.