Rust lernen (Teil 2): Typen und Kontrollfluss
Ganzzahlen mit fester Breite, Überlauf, Division ohne stille Umwandlung und if und loop als Ausdrücke. Am Ende liest logbuch den Statuscode jeder Zeile und zählt die Fehler.
ls -lt posts/
Über Systeme, Tooling und das gelegentliche Yak-Shaving.
Ganzzahlen mit fester Breite, Überlauf, Division ohne stille Umwandlung und if und loop als Ausdrücke. Am Ende liest logbuch den Statuscode jeder Zeile und zählt die Fehler.
Was müsste man beherrschen, wenn Lieferketten, Stromnetz und Hilfe dauerhaft ausfallen? Der Auftakt legt Regeln, Tech-Tree und Ziel fest: vom ersten Werkzeug bis zum selbst gebauten Rechner.
Aus einem Seed wird eine Welt: 2.049 Regionen, 115 Städte, 403 Einheiten. Teil 8 portiert die Weltgenerierung von Atlantis PbeM so, dass der Python-Port dieselbe Welt erzeugt wie das C++-Original – Region für Region, und mit denselben Macken.
Was Cargo außer run und test noch kann: check und Release-Builds, rustfmt für einheitlichen Code, Clippy als Linter mit Autofix, Dokumentation mit Doctests und eine CI-Zeile, die alles prüft.
Rust installieren, das erste Cargo-Projekt anlegen und die ersten Fehlermeldungen lesen. Am Ende zählt logbuch die Zeilen einer Logdatei, mit drei grünen Tests.
Der wichtigste Survival-Trick passiert vor der Tour: jemandem Route und Rückkehrzeit hinterlassen. Was 127 Hours über Trip Plans, Ressourcen und die Grenze zwischen Rettung und Selbstrettung lehrt.
Regionen, Gebäude, Einheiten und Fraktionen hängen im C++-Code von Atlantis PbeM über rohe Zeiger zusammen. Teil 7 macht daraus Python-Objekte, baut eine C++-Sonde als Orakel und findet dabei einen Absturz, den nie jemand gesehen hat.
Das Finale: von der Unit- zur Acceptance-Schleife mit einer echten CLI, wann man den Agenten nicht autonom an die Schleife lässt – und wie sich die Rolle des Menschen zum Spec-Owner und Reviewer verschiebt.
Eine 5.000-Zeilen-Funktion schreibt das Regelbuch von Atlantis PbeM als HTML. Teil 6 portiert sie Kapitel für Kapitel gegen die Referenz – und landet bei 230.407 Bytes, die sich bis auf das Datum nicht vom Original unterscheiden.
Coverage zeigt, welcher Code ausgeführt wurde – nicht, ob Tests kleine Verhaltensänderungen bemerken. Mutation Testing baut kontrolliert Fehler ein und prüft, ob die Tests darauf reagieren.