Programmiersprache: Rust 1.39 erscheint mit Async/Await

Nach über drei Jahren Arbeit ist die Async-Await-Technik in der nun verfügbaren Version 1.39 der Sprache Rust offiziell stabilisiert. Zudem gibt der neue Borrow-Checker erstmals Fehler in Rust aus.

Artikel veröffentlicht am ,
Rust ist in Version 1.39 verfügbar.
Rust ist in Version 1.39 verfügbar. (Bild: Jason Rogers, flickr.com/CC-BY 2.0)

Die Version 1.39 der Programmiersprache Rust ist erschienen. Damit ist Technik für die Async-Await-Syntax erstmals offiziell stabil verfügbar. Begonnen haben die Arbeiten daran bereits vor mehr als drei Jahren, wie das Team selbst in einem zusätzlichen Blogeintrag zu der Technik schreibt. Mit der Version 1.36, die im Sommer dieses Jahres erschienen ist, hat das Entwicklerteam bereits wichtige Vorarbeiten dafür durchgeführt.

Stellenmarkt
  1. Requirements Engineer (w/m/d) Softwareentwicklung
    SSI SCHÄFER IT Solutions GmbH, Giebelstadt, Dortmund
  2. Referent (m/w/d) Akademische Weiterbildung Schwerpunkt Studiengang-Management
    Technische Hochschule Ingolstadt, Ingolstadt
Detailsuche

Die nun verfügbare Implementierung bezeichnet das Team als Minimal Viable Product (MVP) und geht entsprechend davon aus, dass sich die Technik künftig noch stark weiter entwickeln werde. Mit Hilfe der neuen Syntax lassen sich Funktionen und Codeblöcke als async markieren und mit .await kann auf deren Fertigstellung gewartet werden. Der Rückgabewert einer Async-Funktion ist dabei ein Future. Letzteres wiederum beschreiben die Entwickler von Rust als "ausgesetzte Berechnung".

Die Technik lässt sich einfach mit dem Ziel beschreiben, Funktionen auch pausieren zu können. Ähnliche Techniken gibt es auch in anderen Sprachen wie etwa Javascript oder C#. Die Rust-Entwickler weisen aber explizit darauf hin, dass sich das eigene Ausführungsmodell von denen in wichtigen Details unterscheide.

Neuer Borrow-Checker wird eingeführt

Mit Rust 1.39 ändert das Team außerdem das Verhalten des neu eingeführten Borrow-Checkers für die Veröffentlichung von Rust 2018. Die alte Technik hatte einige Probleme, die unsichere Speicherzugriffe ermöglichte, was Rust eigentlich verhindern soll. Die neue Implementierung hat zwar diese Probleme behoben, jedoch für einige Fehler in produktivem Code gesorgt.

Golem Akademie
  1. Container Technologie: Docker und Kubernetes - Theorie und Praxis: virtueller Drei-Tage-Workshop
    04.-07.07.2022, virtuell
  2. Kubernetes – das Container Orchestration Framework: virtueller Vier-Tage-Workshop
    11.-14.07.2022, Virtuell
Weitere IT-Trainings

Bisher hat das Team das geänderte Verhalten lediglich als Warnungen angezeigt. Mit der nun veröffentlichten Version 1.39 werden daraus harte Fehler in Rust 2018. Mit der kommenden Version 1.40 soll das auch für Rust 2015 umgesetzt werden, so dass der alte Borrow-Checker entfernt werden kann.

Entwickler können mit Rust 1.39 Attribute in Funktionsparametern nutzen. Außerdem sind einige Funktionen aus der Standardbibliothek als const fn verfügbar, dazu gehören etwa Vec::new, String::new, LinkedList::new oder auch str::len. Diese lassen sich in const-Umgebungen aufrufen, also etwa um einen konstanten Vektor zu erzeugen. Weitere Neuerungen listet die Ankündigung.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


ibsi 09. Nov 2019

Danke. Geht tatsächlich nicht darum die letzte Millisekunde herauszukitzeln. Wenn es 1...

sfr (golem.de) 08. Nov 2019

Vielen Dank für den Hinweis. Der Fehler ist bereits korrigiert.



Aktuell auf der Startseite von Golem.de
LG HU915QE
Laserprojektor erzeugt 90-Zoll-Bild aus 5,6 cm Entfernung

LG hat einen Kurzdistanzprojektor mit Lasertechnik vorgestellt. Der HU915QE erzeugt ein riesiges Bild und steht dabei fast an der Wand.

LG HU915QE: Laserprojektor erzeugt 90-Zoll-Bild aus 5,6 cm Entfernung
Artikel
  1. Verkaufsstart des 9-Euro-Tickets: Was Fahrgäste wissen müssen
    Verkaufsstart des 9-Euro-Tickets
    Was Fahrgäste wissen müssen

    Das 9-Euro-Ticket für den ÖPNV ist beschlossene Sache, Verkehrsverbünde und -unternehmen sehen sich auf den Verkaufsstart in diesen Tagen gut vorbereitet. Doch es gibt viele offene Fragen.

  2. Sexualisierte Gewalt gegen Kinder: Bundesinnenministerin Faeser ändert Ansicht zu Chatkontrolle
    Sexualisierte Gewalt gegen Kinder
    Bundesinnenministerin Faeser ändert Ansicht zu Chatkontrolle

    Ursprünglich hat die Sozialdemokratin die geplante EU-Überwachung des Internets befürwortet. Nun sagt sie etwas anderes zur Chatkontrolle.

  3. LTE-Patent: Ford droht Verkaufs- und Produktionsverbot in Deutschland
    LTE-Patent
    Ford droht Verkaufs- und Produktionsverbot in Deutschland

    Ford fehlen Mobilfunk-Patentlizenzen, weshalb das Landgericht München eine drastische Entscheidung gefällt hat. Autos droht sogar die Vernichtung.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Acer Predator X38S (UWQHD, 175 Hz OC) 1.499€ • MindStar (u. a. AMD Ryzen 7 5700X 268€ und PowerColor RX 6750 XT Red Devil 609€ und RX 6900 XT Red Devil Ultimate 949€) • Alternate (u. a. Cooler Master Caliber R1 159,89€) • SanDisk Portable SSD 1 TB 81€ • Motorola Moto G60s 149€ [Werbung]
    •  /