Rust vient comme une suite de bibliothèques associées, les fichiers de documentation, et un plein sur le compilateur.
La langue elle-même a été écrit spécifiquement pour le développement client-serveur d'applications Web, avec l'objectif principal étant de la vitesse et un design sans accident.
La syntaxe de Rust est très similaire à C et C ++, ce qui rend très facile à apprendre si vous avez des connaissances de base de la programmation.
Les applications écrites à Rust sont notamment stable
Ce qui est nouveau dans cette version:.
- Le grande majorité de la bibliothèque standard est maintenant # [stable]. Il est plus possible d'utiliser les fonctions instables avec une version stable du compilateur.
- Beaucoup de caisses populaires sur crates.io travaillent maintenant sur le canal de libération stable.
- Arithmétique sur les types entiers de base vérifie maintenant débordement dans debug.
Ce qui est nouveau dans la version 1.6.0:
- La grande majorité de la bibliothèque standard est maintenant # [stable]. Il est plus possible d'utiliser les fonctions instables avec une version stable du compilateur.
- Beaucoup de caisses populaires sur crates.io travaillent maintenant sur le canal de libération stable.
- Arithmétique sur les types entiers de base vérifie maintenant débordement dans debug.
Ce qui est nouveau dans la version 1.5.0:
- La grande majorité de la bibliothèque standard est maintenant # [stable]. Il est plus possible d'utiliser les fonctions instables avec une version stable du compilateur.
- Beaucoup de caisses populaires sur crates.io travaillent maintenant sur le canal de libération stable.
- Arithmétique sur les types entiers de base vérifie maintenant débordement dans debug.
Ce qui est nouveau dans la version 1.3.0:
- La grande majorité de la bibliothèque standard est maintenant # [stable]. Il est plus possible d'utiliser les fonctions instables avec une version stable du compilateur.
- Beaucoup de caisses populaires sur crates.io travaillent maintenant sur le canal de libération stable.
- Arithmétique sur les types entiers de base vérifie maintenant débordement dans debug.
Ce qui est nouveau dans la version 1.0.0:
- La grande majorité de la bibliothèque standard est maintenant # [stable]. Il est plus possible d'utiliser les fonctions instables avec une version stable du compilateur.
- Beaucoup de caisses populaires sur crates.io travaillent maintenant sur le canal de libération stable.
- Arithmétique sur les types entiers de base vérifie maintenant débordement dans debug.
Ce qui est nouveau dans la version 0.12.0 / 1.0.0-beta.4:
- L'introduction documentation (maintenant appelé Le Guide de Rust) a été complètement réécrite, comme l'ont fait un certain nombre de guides supplémentaires.
- le gestionnaire de paquets de Rust, Cargo, continue d'améliorer et est parfois considéré comme assez impressionnant.
- Beaucoup API en std ont été examinés et mis à jour pour la cohérence avec les lignes directrices de développement codage de Rust. La documentation de la bibliothèque standard suit les progrès de stabilisation.
- Bibliothèques mineures ont été déplacés hors de l'arbre à la rouille lang org sur GitHub: uuid, semver, glob, num, hexfloat, fourcc. Ils peuvent être installés avec Cargo.
- Lifetime élision permet annotations à vie d'être laissé hors des déclarations de fonctions dans de nombreux scénarios communs.
- Rust fonctionne maintenant sur Windows 64 bits.
Ce qui est nouveau dans la version 0.12.0 / 1.0.0-alpha:
- La documentation d'introduction ( maintenant appelé Le Guide de Rust) a complètement été réécrit, comme l'ont fait un certain nombre de guides supplémentaires.
- le gestionnaire de paquets de Rust, Cargo, continue d'améliorer et est parfois considéré comme assez impressionnant.
- Beaucoup API en std ont été examinés et mis à jour pour la cohérence avec les lignes directrices de développement codage de Rust. La documentation de la bibliothèque standard suit les progrès de stabilisation.
- Bibliothèques mineures ont été déplacés hors de l'arbre à la rouille lang org sur GitHub: uuid, semver, glob, num, hexfloat, fourcc. Ils peuvent être installés avec Cargo.
- Lifetime élision permet annotations à vie d'être laissé hors des déclarations de fonctions dans de nombreux scénarios communs.
- Rust fonctionne maintenant sur Windows 64 bits.
Ce qui est nouveau dans la version 0.11.0:.
- champs Struct sont maintenant tous privés par défaut
- indices vectoriels et décaler les montants sont à la fois nécessaires pour être un `uint` maintenant, au lieu de tout type intégral.
- caractère Byte, chaîne d'octets, et premières littéraux de chaîne d'octets sont désormais tous pris en charge par préfixant la normale littérale avec un `b`.
- ABIs multiples ne sont plus autorisés dans une chaîne ABI
- La syntaxe pour la durée de vie sur clousres / procédures a été légèrement modifié.
- point module flottant a cependant été retiré de la langue, il est encore fourni par une mise en œuvre de la bibliothèque,.
- variantes enum privées sont maintenant interdites.
- Le `mot priv` a été retiré de la langue.
- Une fermeture ne peut plus être invoquée par un & -pointer.
- Le `utilisation foo, bar, baz;.` La syntaxe a été retiré de la langue
- Le transmute intrinsèque ne fonctionne plus sur les paramètres de type.
- Statique permettent maintenant des blocs / articles dans leur définition.
- limites de traits sont séparés des objets avec + au lieu de:. Maintenant
- objets Mutably empruntés ne peuvent plus être lus pendant qu'ils sont empruntés.
Ce qui est nouveau dans la version 0.10:
- Un nouveau processus de RFC est maintenant en place pour modifier la langue .
- Patterns avec `` @ -pointers ont été retirés de la langue.
- Patterns avec des vecteurs uniques ( `~ [T]`) ont été retirés de la langue.
- Patterns avec chaînes uniques ( `~ de str`) ont été retirés de la langue.
Ce qui est nouveau dans la version 0.9:
- Fait de nombreuses améliorations à l'exécution et I / O sous-système.
- liaison statique Dépôt et lien en temps optimisation.
- Réduction de la variété des fermetures dans la langue.
Ce qui est nouveau dans la version 0.8:
- Strings ne contiennent plus de fuite nulls. Le nouveau module `std :: c_str` prévoit de nouveaux mécanismes pour la conversion de chaînes C.
- Le type de fonctions étrangères est maintenant `extern & quot; C & quot; fn` au lieu de `* u8 '.
- L'IFF a été remanié de telle sorte que les fonctions étrangères sont appelées directement, plutôt que par une enveloppe de pile de commutation.
- La syntaxe `for` boucle a changé de travailler avec le` trait Iterator`.
- une longue attente, le déroulement des travaux sur Windows.
- méthodes par défaut sont prêtes à l'emploi.
- De nombreux bogues trait d'héritage fixes.
- Les objets de traits appartenant et empruntés travaillent de façon plus fiable.
Ce qui est nouveau dans la version 0.6:
- A remplacé le «cargo» gestionnaire de paquets avec 'rustpkg'
- Ajout polyvalent tout outil 'rouille'
- `rustc --test` prend désormais des repères avec le` # [banc] `attribut
- rustc maintenant * * tentatives d'offrir des suggestions d'orthographe
- Amélioration du support pour ARM et Android
- backend préliminaire MIPS
- Fonction étrangère Amélioration de la mise en œuvre ABI pour x86, x86_64
- Diverses améliorations d'utilisation de la mémoire
- Code de Rust peut être intégré dans le code étranger dans des circonstances limitées
Ce qui est nouveau dans la version 0.5:
- Nouveau système état de manutention dans `coeur :: condition`
- Timsort ajouté à `std :: sort`
- Nouvelle file d'attente prioritaire, `std :: priority_queue`
- Tuyaux pour les types sérialisables, `std :: flatpipes '
- sérialisation remanié pour être trait à base
- `définitions getopts` expansée
- Déplacé à terme à `std`
- Plus de fonctions sont pures maintenant
- `coeur :: comm` renommé` oldcomm`. Still dépréciée
- `rustdoc` et` cargo` sont des bibliothèques maintenant
- Ajout d'un REPL préliminaire, `rusti`
- Licence changé du MIT à double MIT / APL2
Ce qui est nouveau dans la version 0.3.1:.
- Minor OSX fix
Ce qui est nouveau dans la version 0.3:
- Nouveau commodités de codage
- nettoyage sémantique
- Expérimental nouvelles fonctionnalités linguistiques
- Type de réflexion
- Suppression des diverses fonctionnalités obsolètes
- réorganisation du compilateur
Limites :.
- La documentation est incomplète
- La performance est inférieure à l'objectif visé.
- API de bibliothèque standard sont soumises à une modification, d'une réorganisation.
- versioning de niveau de langue est pas encore opérationnel - futur code se brisera de façon inattendue .
Commentaires non trouvées