Rust 1.0 disponible en version Alpha
Le langage de programmation multiparadigme de Mozilla se rapproche de sa première version stable

Le , par Hinault Romaric

21PARTAGES

1  0 
Conformément à la feuille de route publiée le mois dernier, les développeurs de Rust ont publié la version Alpha de Rust 1.0.

Cette sortie marque le gel des fonctionnalités du langage. La bibliothèque standard est presque complète en termes de fonctionnalités et la majorité des API qui seront disponibles avec la version stable de Rust 1.0 ont été marquées comme « #[stable] ». Les API instables portent l’étiquette « #[unstable] » et peuvent de ce fait faire l’objet de commentaires de la part de la communauté afin de traiter et stabiliser celles-ci

Rust 1.0 Alpha donne une image assez précise de ce que ressemblera la version stable. Attention cependant à vouloir l’utiliser dans un environnement de production. Il s’agit d’une préversion, et même si les modifications à venir seront mineures, elles pourront, cependant, briser la compatibilité.

Par rapport à la dernière préversion de Rust, cette version Alpha apporte un lot de changements et de nouveautés au langage, ainsi qu’a la bibliothèque de base.

En ce qui concerne le langage, on va noter :

  • un meilleur support des DSTs (Dynamically-sized types). Les DSTs permettent de définir des types dont la taille n’est connue que lors de l’exécution ;
  • le support complet des Multidispatch traits. Cette caractéristique a ouvert la porte à de nombreuses API intéressantes ;
  • l’intégration des Associated types. Désormais, les « Traits » peuvent avoir des types « associés », ce qui permet de réduire le niveau de détails des génériques et des types « inférence » ;
  • des révisions du système de Macros. Bien que ce système souffre encore de quelques manquements, il représente une fonctionnalité importante et puissante qu’offrira la programmation Rust dans la version 1.0 ;
  • l’adoption des types pour les nombres entiers. Le long débat sur les types des nombres entiers a finalement trouvé une issue. « int » et « uint » sont désormais connus comme « isize » et « usize » ;





En ce qui concerne la bibliothèque du langage, on va noter l’approbation d’un grand nombre de conventions RFC, la mise en œuvre d’une série de RFC pour réorganiser et stabiliser les collections et des révisions des modules de concurrence de Rust, y compris le stockage local des threads et des primitives de synchronisation. Le système d’exécution de Rust et son modèle « green-threading » ont été entièrement supprimés.

Tous les types primitifs et les blocs de construction de base (comme char, String, Vec, Box, Arc, RefCell, etc.) sont désormais étiquetés comme stable « #[stable] ».

Les développeurs de Mozilla invitent la communauté à apporter leur aide pour itérer sur les bibliothèques et API stables avant la sortie de la version bêta du langage de programmation. Pendant ce cycle, il est recommandé d’utiliser les versions disponibles sur le canal nightly, qui continuera à évoluer au fur et à mesure que les API prennent leur forme définitive.

La première bêta de Rust devrait être disponible la semaine du 16 février 2015. Toutes les API seront marquées comme stable et les fonctionnalités de la bibliothèque standard seront complètes. Cette étape sera principalement axée sur les tests, les corrections de bogues et les finitions.

Source : Blog Rust

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de gstratege
Membre habitué https://www.developpez.com
Le 19/01/2015 à 10:30
Selon vous, pourquoi Mozilla a besoin de ce nouveau OS ?
Avatar de tomlev
Rédacteur/Modérateur https://www.developpez.com
Le 19/01/2015 à 10:34
Citation Envoyé par gstratege Voir le message
Selon vous, pourquoi Mozilla a besoin de ce nouveau OS ?
C'est un langage de programmation, pas un OS...
Avatar de Uther
Expert éminent sénior https://www.developpez.com
Le 19/01/2015 à 22:54
Citation Envoyé par gstratege Voir le message
Selon vous, pourquoi Mozilla a besoin de ce nouveau OS ?
Comme le dit tomlev, c'est un langage de programmation, pas un OS. Si Mozilla a vu un intérêt à développer ce langage, c'est qu'il espère qu'il permettra à terme de remplacer le C++ dans Firefox.

En effet, Rust a sur le papier pas mal d’avantages par rapport au C++, qui le rendent particulièrement intéressant pour un moteur web. Il est notamment bien plus armé niveau sécurité et moins sujet aux risques de leaks de mémoire. Tout cela en gardant des performances similaires à C++ car contrairement a la plupart des langage avec une gestion de mémoire sécurisée, il n'a pas se GC intégrée au langage(Java, C#, Go, ...) ni de typage dynamique (Javascript, Phyton, ...).

Actuellement la R&D de Mozilla travaille sur un nouveau moteur web expérimental nommé Servo écrit en Rust, et commence à envisager d’inclure des portions de code en Rust dans Firefox.
Avatar de imperio
Membre chevronné https://www.developpez.com
Le 20/01/2015 à 9:36
@Uther: Je ne pense pas que ce sera pour tout de suite qu'ils réécriront firefox en Rust. Peut-être dans les années à venir, mais ça serait étonnant qu'il le fasse aussi vite.

Tu parles de ce servo ?
Avatar de Uther
Expert éminent sénior https://www.developpez.com
Le 20/01/2015 à 10:58
Citation Envoyé par imperio Voir le message
@Uther: Je ne pense pas que ce sera pour tout de suite qu'ils réécriront firefox en Rust. Peut-être dans les années à venir, mais ça serait étonnant qu'il le fasse aussi vite.
C'est bien pour ça que j'ai précisé "à terme" et que ce n'est que de la R&D pour le moment.

La réécriture complète de Firefox n'est bien évidement pas encore a l'ordre du jour. Ils ont quand même commencé à étudier comment intégrer des modules écrits en Rust à Firefox, en commençant par des portions non critiques comme le support du bmp.

Citation Envoyé par imperio Voir le message
Tu parles de ce servo ?
En effet.
Avatar de gstratege
Membre habitué https://www.developpez.com
Le 22/01/2015 à 16:35
Oui en fait je suis un peu loin dans ma réflexion, c'est bien un langage et non pas un OS, mais je pensais que ce langage était créer pour créer un OS car quand je lit la définition, il disent :
"Rust is a systems programming language"
Avatar de Uther
Expert éminent sénior https://www.developpez.com
Le 23/01/2015 à 2:05
Rust est en effet comme le C ou le C++, ce qu'on peut appeler un langage de programmation système.
Cela signifie qu'il a des capacités bas niveau qui lui permettent entre autre de programmer des OS, drivers, ou même des programmes minimaux(pour des micro-hardware sans OS). Il y a actuellement plusieurs POC d'OS minimaux en Rust, mais rien avec de grosses ambitions pour le moment.

Cependant les langage systèmes ne servent pas qu'a ça. Leur accès au bas niveau les rend également très efficace dans tous les programmes qui nécessitent de bonne performance brutes comme de l’encodage vidéo, des jeux-vidéo ou un navigateur. Et c'est bien parce que c'est un outil prometteur pour un navigateur que Mozilla s'est intéressé a Rust.
Avatar de Hinault Romaric
Responsable .NET https://www.developpez.com
Le 06/04/2015 à 17:25
Rust 1.0 disponible en version bêta,
le langage de programmation multiparadigme de Mozilla atteindra sa première version stable le 15 mai

Initialement prévu pour le 16 février dernier, les développeurs du langage de programmation Rust ont finalement publié la première bêta de Rust 1.0 il y a quelques jours.

À titre de rappel, Rust est développé par la fondation Mozilla. C’est un langage de programmation compilé, multiparadigme (orienté objet, fonctionnel et procédural) qui tire parti des langages fonctionnels comme Haskell et ML, du langage orienté objet C++ et bien plus.

Le but de Mozilla est de « concevoir et implémenter un langage orienté objet statique, typé, sûr, concurrentiel et efficace ». À terme, le langage devrait, selon Mozilla, fournir la sécurité et la commodité des langages modernes, tout en maintenant l’efficacité et le contrôle de bas niveau des langages C et C++. Le langage de programmation est donc vu comme une alternative à C/C++, qui s’inspire des éléments qui ont fait leur succès, mais qui offre en plus une meilleure sécurité.




La sortie de la version bêta marque une étape importante dans le processus de développement de Rust. Toutes les API, les bibliothèques et les caractéristiques du langage ont été marquées comme stable. Cette version représente donc un aperçu précis de ce que sera Rust 1.0.

Les prochaines semaines seront marquées par la correction des bogues, les tests, la stabilisation des fonctionnalités et l’amélioration de l’expérience utilisateur.

La version stable de Rust 1.0 est prévue pour le 15 mai, dans exactement six semaines après la sortie de la bêta de Rust 1.0. Parallèlement à la sortie de cette version, Mozilla publiera également la version stable de Cargo le gestionnaire de package pour le langage de programmation. Cargo est écrit en Rust et simplifiera la création et la distribution des bibliothèques Rust par les développeurs.

Télécharger Rust 1.0 bêta

Source : Mozilla
Avatar de imperio
Membre chevronné https://www.developpez.com
Le 07/04/2015 à 13:10
Citation Envoyé par Hinault Romaric Voir le message
Cargo est écrit en Rust et simplifiera la création et la distribution des bibliothèques Rust par les développeurs.
Il le fait déjà. De nombreuses bibliothèques sont disponibles sur crates.io (dont certaines étaient à l'origine dans la bibliothèque standard de Rust). Ça vaut le détour.
Avatar de yahiko
Rédacteur/Modérateur https://www.developpez.com
Le 10/04/2015 à 9:18
Je n'ai toujours pas compris pourquoi Mozilla s'embarquait dans cette galère alors qu'ils ont à mon humble avis d'autres priorités plus urgentes (comme améliorer les performances de Firefox qui commence à tirer la langue).

Rust a-t-il un avenir ? Je ne crois pas hélas.
Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web