Wir hosten das Meetup der Gruppe Rust Franken in unserem Erlanger Office. Unsere Kollegen Stefan Lengfeld und Michael Gerhäuser starten mit zwei Vorträgen rund um Static Dispatch und WebAssembly Workloads für Docker. Sie freuen sich im Anschluss über externe Lightning Talks.
Agenda
18.00 – Ankunft & Abendessen
18.30 – Dynamic und Static Dispatch in Rust
Wolltet ihr schon immer mal wissen, was der Unterschied zwischen ‚dyn‘ und ‚impl‘ für Funktionsargument in Rust ist? Funktioniert beides, aber das eine soll irgendwie „schneller“ sein? Und das andere macht das Programm „langsamer“, aber das Binary „kleiner“?
Wenn ihr Antworten auf diese Fragen haben wollt, dann seid ihr hier genau richtig. In diesem Vortrag aus dem Terminal wird Stefan das Sprachfeature Dynamic und Static Dispatch in Rust im Detail besprechen. Dazu schreiben wir ein wenig Rust-Code, erklären die Syntax und die Hintergründe und vergleichen Rust mit C++. Dort ist das Sprachfeature bekannt als Virtual Functions und Templates.
Auch ein Blick auf den generierten Assembler-Code darf nicht fehlen. Hier gehen wir den Unterschieden zwischen „langsamer“, „schneller“ und „kleiner“ Bit für Bit auf den Grund.
Über den Speaker:
Stefan Lengfeld arbeitet seit 2017 als Embedded Linux und Embedded Android Entwickler bei inovex in Köln. Seit 2015 ist er Linux Kernel Contributor und beschäftigt sich beruflich mit allen Themen rund um Embedded Linux Software Entwicklung. Neben der regen Teilnahme an Konferenzen ist er auch in seiner Freizeit Opensource Contributor und arbeitet an eigenen Software Projekten.
19.15 Pause mit Essen und Gesprächen
19.45 – WebAssembly Workloads für Docker mit Rust
Ursprünglich war der Gedanke bei WebAssembly (WASM), komplexe Workloads und andere Sprachen neben JavaScript ins Web-Ökosystem zu holen. Seitdem hat sich viel getan und WebAssembly ist nicht mehr nur im Browser zu finden. Noch sehr jung ist die Idee, reine WebAssembly Module als plattformunabhängige OCI Images ohne Linux-Userspace zu verpacken und via Docker und Kubernetes zu deployen. Das Rust-Ökosystem bietet derzeit eine der besten Umgebungen, um WebAssembly Module zu erstellen.
In diesem Talk werfen wir einen Blick darauf, wie wir mit Rust WebAssembly Module erzeugen, sie in Container verpacken und mit Docker verwalten.
20.30 – Dein Lightning Talk, Zeit für weitere Gespräche
Du hast eine tolle Crate gefunden, die du allen zeigen willst? Oder ein besonders schönes Stück Rust-Code, das dir so gut gefallen hat, dass du es allen zeigen willst? Dann ist hier deine Gelegenheit dazu. Sag bitte vorher Bescheid, dass wir da etwas mit planen können.