J'ai (très) récemment décidé de commencer à apprendre Rust. C'est un langage compilé créé par Mozilla en 2009. Une version stable 1.0
du compilateur rustc
est disponible depuis mai 2015, et la dernière version stable, 1.1.0
, est sortie en juin.
J'en profite pour partager avec vous mes premiers pas, mes trouvailles et mes progrès. Je ne promets rien, j'irai à mon rythme, selon le temps que j'ai de disponible et mes envies.
Je commence aujourd'hui par faire un tour d'horizon de ce que j'ai installé sur mon poste, et des ressources que j'ai trouvé sur internet pour bien démarrer.
rustc
et cargo
La première étape consiste à installer rustc
et cargo
. Si vous utilisez un Linux/Unix (et vous devriez), une seule commande suffit pour installer ces deux outils :
$ curl -sf -L https://static.rust-lang.org/rustup.sh | sh
Ce script considère que vous utilisez sudo
sur votre machine, et vous demandera très certainement votre mot de passe administrateur. (Sinon des paquets pour différents OS sont disponibles sur le site officiel du langage.)
rustc
est le compilateur rust, alors que cargo
est un outil de gestion des dépendances, et de construction d'exécutables.
Un IDE au poil (ou pas...)
La suite logique, c'est d'installer un IDE. Eh bien il n'y en a pas encore vraiment. Il y a bien quelques tentatives sur GitHub, mais elles m'ont semblées peu abouties.
Visiblement, la communauté utilise plutôt des éditeurs de textes simples (exit Emac donc...) comme Vim (pour les plus courageux), SublimeText (pour les plus riches) ou Atom.
N'étant ni riche, ni courageux, j'ai décidé de me tourner vers Atom (que je connaissais déjà !). Je passe sur l'installation d'Atom pour m'intéresser à celle des différents paquets facilitant la vie du développeur Rust avec cet éditeur.
Coloration syntaxique
Le paquet language-rust
apporte la coloration syntaxique à l'éditeur ainsi que divers autres petits bonus. Vous pouvez l'installer via l'interface graphique, ou directement via la ligne de commande avec un simple :
$ apm install language-rust
Complétion de code
Un peu plus compliqué cette fois, il faut d'abord installer racer
disponible ici : https://github.com/phildawes/racer.
Il faut aussi avoir téléchargé/décompressé le code source de rustc
disponible sur le site officiel.
Finalement, installer le paquet racer
dans Atom : https://atom.io/packages/racer. Il faudra compléter dans les options les emplacements de racer
et du code source de rustc
sur votre disque.
Compilation "à la volée"
L'installation des paquets lint
et lint-rust
permet la compilation à la volée de vos sources et le soulignage en rouge des erreurs de compilation, à chaque ouverture/sauvegarde de fichier.
Ressources et tutoriaux
On notera d'abord l'existence du livre officiel "The Rust programming language" à cette adresse : https://doc.rust-lang.org/stable/book/. Il me semble suffisant à une première approche des bases du langage.
Le guide officiel de cargo
devrait lui vous permettre d'appréhender la construction et la gestion des dépendances avec cet outil : http://doc.crates.io/guide.html.
Sur Reddit, un subreddit est dédié à la communauté Rust : https://www.reddit.com/r/rust/.
Enfin, vous pouvez consulter ce site : This Week in Rust qui propose chaque semaine une newsletter (mais pas par mail) sur les dernières actualités de la communauté.