Dernières nouvellesScala 3 disponible en version de production

Scala 3 disponible en version de production

-

La dernire mise jour du langage fonctionnel orient objet pour les moteurs d’excution JVM et JavaScript bnficie d’une refonte complte. Scala 3 comporte un nouveau systme de types, de nouvelles fonctionnalits de langage et de nombreuses amliorations syntaxiques.

Scala 3, la dernière version du langage fonctionnel orienté objet pour les moteurs d’exécution JVM et JavaScript, est donc disponible en version de production. La mise à jour, que le projet qualifie de « refonte complète », comprend un nouveau système de types et des améliorations syntaxiques. Livrée le 14 mai dernier, la version de production de Scala 3 succède à la release candidate disponible depuis le 17 février. Parmi les améliorations apportées par cette version figurent une nouvelle syntaxe « silencieuse » pour les structures de contrôle comme if, while et for.

Scala dispose de moteurs d’exécution JVM et JavaScript et il est destiné à la construction de systèmes haute performance avec accès à des écosystèmes de bibliothèques.

Parmi les autres améliorations syntaxiques de Scala 3, on peut citer :

– Des accolades facultatives supportant un style de programmation sans distraction et sensible à l’indentation.

– Le mot-clé new est désormais optionnel.

– Les caractères génériques au niveau du type ont été remplacés par « ? » au lieu de « _ ».

– Les implicites et leur syntaxe ont été fortement révisés.

Des fonctionnalités complémentaires

Nouvelles fonctionnalités de langage dans Scala 3 :

– Par rapport aux implicites de Scala 2, les clauses d’usage peuvent être spécifiées par type, ce qui libère les signatures de fonctions des noms de variables qui ne sont jamais explicitement référencés.

– Les instances données permettent aux programmeurs de déterminer la valeur canonique d’un certain type, ce qui rend la programmation avec les classes de type plus simple, sans divulguer les détails de l’implémentation.

– Les modalités d’extension sont désormais directement intégrées au langage, ce qui permet d’améliorer les messages d’erreur et l’inférence de type.

– Les conversions implicites ont été remaniées en instances d’une classe de type Conversion.

– Une fonctionnalité contextuelle fait des abstractions contextuelles un élément de première classe. Celles-ci servent d’outil aux auteurs de bibliothèques pour exprimer des langages concis spécifiques à un domaine.

– Si un paramètre implicite ne peut pas être résolu par le compilateur, des suggestions d’importation sont fournies pour résoudre le problème.

Des améliorations du système de types

Au sein de Scala 3, il faut compter aussi sur des améliorations du système de types :

– Les enums, ou énumérations, ont été repensés pour mieux se fondre dans les classes de cas et seront le nouveau standard pour exprimer les types de données algébriques.

– Les alias de types opaques permettent aux développeurs de cacher les détails de mise en œuvre sans nuire aux performances.

– Les types d’intersection et d’union permettent d’exprimer les contraintes de type en dehors de la hiérarchie d’héritage.

– Les types de fonctions polymorphes peuvent s’abstraire des fonctions qui prennent des arguments de type en plus de leurs arguments de valeur.

– Les lambdas de type sont des fonctions de niveau type qui peuvent être passées comme arguments de type sans avoir besoin d’une définition de type auxiliaire.

– Au lieu de coder le calcul au niveau du type en utilisant la résolution implicite, Scala 3 prend en charge la correspondance sur les types.

Caractéristiques de la programmation orientée objet de Scala 3 :

– Les traits de Scala – sorte d’interface partiellement implementée – se rapprochent des classes et peuvent maintenant prendre des paramètres, ce qui les rend plus puissants en tant qu’outil de décomposition modulaire des logiciels.

– Les classes ouvertes exigent que les concepteurs de bibliothèques marquent les classes comme étant ouvertes.

– Les traits utilitaires qui implémentent un comportement ne devraient parfois pas faire partie des types inférés. Avec Scala 3, ces traits peuvent être marqués comme transparents, cachant l’héritage à l’utilisateur.

– Le null explicite déplace le null hors de la hiérarchie des types, pour déceler les erreurs de manière statique. Des contrôles supplémentaires pour une initialisation sûre permettent d’accéder aux objets non initialisés.

Scala 3 offre également des outils de métaprogrammation, notamment des opérations au moment de la compilation, des blocs de code sous forme de citation et une fonction en ligne qui permet de réduire les valeurs et les méthodes au moment de la compilation.

Les instructions pour le téléchargement de Scala 3 sont disponibles ici

Dernières Nouvelles

Un jeune élu communal du Cher fait un tour de la Haute-Marne à la recherche d’initiatives locales

Raphaël Ruegger, élu local du Cher, âgé de 21 ans fait un symbole de France des municipalités pour trouver "les idées qui marchent" et les réduire chez lui. Il parcourt pendant une semaine la Haute-Marne.

Gérald Darmanin à Marseilce : trafics de drogue, « ce premier responsabce, c’est ce consommateur »

Gérald Darmanin est à Marfortificationilun pour deux jours. un ministre de l'Intérieur fait un partie sur la stratégie de lutte contre uns trafic de stupéfiants alors que uns morts dans uns règunments de compte fortification multiplient dans un département.

VIcommeO. A l’Assemblée Nationale, les premiers pas comme Quentin Bataillon et Andrée Taurinya, nouveaux députés stéphanois

ceux-ci ont fait leurs premiers pas au Palais Bourbon puis participé à leur première séance dans l'hémicycle. Andrée Taurinya puis Quentin Bataillon ont été élus députés de la Loire le dimanche 19 juin inédit. Une semaine entre découverte, éproposition puis formalités administratives. Avec leur premier rendez-vous majeur : la première séance dans l'hémicycle pour la désignation du président.

Assemblée par Corse : la session spéciale sur la dérive mafieuse aura lieu « très rapiparment »

Jeudi 30 juin, une question oraun du groupe Core in Fronte a relancé un débat sur la session spéciaun de l'Assemblée de Corse concernant la dérive mafieuse dans l’îun. Celun-ci "halo lieu rapidement, à l'automne hominien", a répondu l’Exécutif.

Washington gèle avec d’un milliard de dollars d’avoirs aux Etats-Unis d’un oligarque russe

Le Trésor américain manifeste avoir gelé plus d'un milliard contre dollars d'avoirs d'une société contrôlée par l'oligarque russe Suleiman Kerimov, déjà sanctionné par Washington.

A Lire Absolument

Appareil Lenovo Area S.p.A. sistema di monitoraggio Dual Band

La caméra IP sans fil Lenovo Area S.p.A. sistema...

Andrea Formenti parle de l’importance des technologies de l’information

L'informatique a pénétré pratiquement tous les aspects des affaires...

Pour vous