Um mal ein bisschen Feedback zu geben.
Nach 2,3 Wochen habe ich mittlerweile ein recht sauberes kleines Android Spiel nach-entwickelt.
(2-Spieler, rundenbasiert auf einem 6x6 Feld, IO übers Terminal).
Gegeneinander spielen können dabei Mensch, zufällig ziehender bot, eine Q-Learning "KI", sowie eine "KI" basierend auf Neuronalen Netzen. Letztere bist aber noch nicht ganz fertig.
Dabei bin ich erstaunt wie kompakt (1k LoC) und schnell das Ergebnis war.
Dazu kommen die auf der vorherigen Seite diskutierten Vorteile von Rust zum tragen, ich denke nicht, dass ich in C++ so eine saubere Lösung so einfach hinbekommen hätte.
Je nachdem wie viel Zeit ich finde schaue ich mal ob ich mittels WebGPU noch eine GUI oder GPU support für das neuronale Netz hinzufüge. Sollte ich mich zu ersterem überwinden könnte ich auch mal testen wie gut das Ergebnis am Ende tatsächlich Plattform übergreifend funktioniert, als Vergleich zu dem o.g. C++ Stack.
Was die bisherige Kritik angeht, auch von meiner Seite:
1) Die Aufteilung von Projekten in files/folder/.. finde ich mittlerweile doch sauber organisiert, bei meiner Kritik auf der letzten Seite hatte ich es mir unnötig kompliziert gemacht.
2)
@blöderidiot
WebGPU als Nachfolger von WebGL könnte was für deine GUI Geschichten sein?
Dahinter stehen Google, Apple, Intel, Mozilla und co.
Klar, kein Erfolgsgarant, aber die Ansätze gefallen mir.
Hier nebenbei auch eine Rust Implementation von WebGPU.
Ich persönlich nutze zwar wenig GUIs, aber wenn ich so
ohne große Performance-einbußen Systemübergreifend effizient GPGPU nutzen kann bin ich trotzdem dabei.
Dass du nicht vorhast auf deine alten Tage
nochmal umzusteigen kam zwar rüber, aber vielleicht findest du es ja trotzdem spannend reinzuschauen?
Mein privates, vorläufiges Fazit nach einem Monat ist, dass ich in C++ noch nicht tief genug drin stecke, um einen Umstieg nicht zumindest zu versuchen.
Die Performance kann imho komplett mit C++ mithalten, die Sprache ist gefühlt (noch) deutlich "aufgeräumter" als C++ und mittels Ownership u.ä. entfallen so viele Fehlermöglichkeiten, dass ich schon als Rust Neuling sicherere Programme schreibe als ich es in C++ machen würde.
Bibliotheken/Bindings für Machine Learning und HPC sind zwar noch nicht stabil verfügbar, aber sie scheinen über die letzten Jahre konstant aufzuschließen ggü anderen Sprachen.
Zuletzt kommt einfach noch mein ganz subjektives Gefühl dazu, es macht deutlich mehr Spaß Rust als C++ zu entwickeln. Die Fehlermeldungen sind deutlich hilfreicher, die Comunity sehr hilfreich und vor allem ist mein Programm kaum gecrasht, eine Eigenschaft die ich über meine C++ Programme während der Entwicklungsphase weniger sagen kann "hüstel".
Entwicklungszeit war, wenn man das lernen der Grundlagen vernachlässigt übrigends nicht länger als für C++.
Der compiler verbietet einem zwar theoretisch etwas mehr als bei C++, praktisch hatte ich aber recht schnell raus was ich durfte und was nicht. Sobald es dann aber compiliert hat, lief es auch (fehlerfrei).
Mal schauen, vlt. schreibe ich ja mal einen kleinen Leserartikel dazu.