18 Punkte von xguru 2023-05-23 | 8 Kommentare | Auf WhatsApp teilen
  • Als ich anfing, Rust zu verwenden, habe ich einige Konzepte aus Rust in meine Art zu programmieren mit Python übernommen
  • Type Hints so weit wie möglich verwenden
  • Dataclasses statt Tupeln/Wörterbüchern
  • Algebraische Datentypen (ADT)
  • Newtype-Pattern
  • Invarianten mithilfe von Typen kodieren
  • Stark typisierte Bounding Boxes

8 Kommentare

 
iolothebard 2023-05-23

Wenn das so ist, warum benutzt man dann überhaupt Python …
(feat. Wenn das so ist, warum benutzt man dann überhaupt Node.js)

 
kherootz 2023-05-23

Es scheint, als wären nur Typen hinzugefügt worden – ist das wirklich mit Rust vergleichbar?

 
jangsc0000 2023-05-23

Wenn man Python wie Rust schreiben will, ist es dann nicht besser, einfach Rust zu verwenden?..

 
cosine20 2023-05-24

Kann man Tensorflow und PyTorch mit Rust nutzen? Selbst wenn das möglich ist, weiß man noch nicht, ob sich auch die daran hängenden Bibliotheken verwenden lassen. Das ist eine viel zu eindimensionale Sichtweise.

 
daejin 2023-05-23

Ich denke, es ist je nach Situation unterschiedlich, ob man die guten Eigenschaften (Konzepte) einer Sprache nutzt oder die Sprache selbst direkt verwendet, aber es sind unterschiedliche Dinge. Nur weil man bestimmte Eigenschaften funktionaler Sprachen wie Lisp oder Haskell in JavaScript sehr effektiv einsetzen kann, heißt das nicht, dass man dort, wo man JavaScript verwendet, kein Lisp einsetzen könnte.

 
winterjung 2023-05-23

Je nach Situation sollte man das selektiv auswählen, aber insgesamt sind das Ansätze, die ich grundsätzlich empfehlen würde.

 
bus710 2023-05-23

Ich kenne mich mit Python nicht besonders gut aus....
Würde das auf diese Weise nicht viel Overhead verursachen?

 
lordang 2023-05-23

Im Inhalt geht es insgesamt viel darum, Type Hints zu verwenden, aber das passiert nicht zur Laufzeit und hat daher nichts mit der Performance zu tun. Teile mit Typprüfungen wie isinstance kosten gegenüber gar keiner Prüfung zwar etwas mehr, soweit ich weiß werden sie intern aber gecacht. In extrem großen Schleifen kann dadurch natürlich schon ein Unterschied entstehen.