Als «type-systems» getaggte Fragen

Ein Typsystem ist eine Sammlung von Regeln, die den verschiedenen Konstrukten - wie Variablen, Ausdrücken, Funktionen oder Modulen -, aus denen ein Computerprogramm besteht, eine Eigenschaft zuweisen, die als Typ bezeichnet wird.

10
Sollen wir Typen für alles definieren?
Kürzlich bin ich auf ein Problem mit der Lesbarkeit meines Codes gestoßen. Ich hatte eine Funktion, die eine Operation ausführte und eine Zeichenfolge zurückgab, die die ID dieser Operation zum späteren Nachschlagen darstellt (ein bisschen wie OpenFile in Windows, das ein Handle zurückgibt). Der Benutzer würde diese ID später verwenden, …
141 type-systems 



16
Wie soll ich "unbekannte" und "fehlende" Werte in einer Variablen speichern und trotzdem den Unterschied zwischen "unbekannten" und "fehlenden" beibehalten?
Betrachten Sie dies als eine "akademische" Frage. Ich habe darüber nachgedacht, von Zeit zu Zeit Nullen zu vermeiden, und dies ist ein Beispiel, bei dem ich keine zufriedenstellende Lösung finden kann. Angenommen, ich speichere Messungen, bei denen gelegentlich bekannt ist, dass die Messung unmöglich ist (oder fehlt). Ich möchte diesen …


14
Wann ist die Typprüfung in Ordnung?
Angenommen, eine Sprache mit einer gewissen inhärenten Typensicherheit (z. B. kein JavaScript): Ausgehend von einer Methode, die a akzeptiert SuperType, wissen wir, dass in den meisten Fällen die Versuchung besteht, Typprüfungen durchzuführen, um eine Aktion auszuwählen: public void DoSomethingTo(SuperType o) { if (o isa SubTypeA) { o.doSomethingA() } else { …


3
Was ist ein Typensystem?
Hintergrund Ich entwerfe eine Sprache als Nebenprojekt. Ich habe einen funktionierenden Assembler, einen statischen Analysator und eine virtuelle Maschine dafür. Da ich mit der von mir aufgebauten Infrastruktur bereits nicht-triviale Programme kompilieren und ausführen kann, habe ich mir überlegt, an meiner Universität einen Vortrag zu halten. Während meines Vortrags erwähnte …


8
Was sind die Sicherheitsvorteile eines Typsystems?
In JavaScript: The Good Parts von Douglas Crockford erwähnt er in seinem Vererbungskapitel: Der andere Vorteil der klassischen Vererbung besteht darin, dass sie die Spezifikation eines Typensystems umfasst. Dies befreit den Programmierer größtenteils davon, explizite Casting-Operationen schreiben zu müssen, was sehr gut ist, da beim Casting die Sicherheitsvorteile eines Typsystems …



2
Warum (oder warum nicht) werden existenzielle Typen in der funktionalen Programmierung als schlechte Praxis angesehen?
Mit welchen Techniken kann ich Code konsequent umgestalten, ohne auf existenzielle Typen angewiesen zu sein? In der Regel werden diese verwendet, um unerwünschte Konstruktionen Ihres Typs zu disqualifizieren und den Konsum mit einem Minimum an Wissen über den angegebenen Typ zu ermöglichen (oder so ist mein Verständnis). Hat jemand eine …


6
Warum ist die Typinferenz nützlich?
Ich lese Code viel häufiger als ich Code schreibe, und ich gehe davon aus, dass die meisten Programmierer, die an industrieller Software arbeiten, dies tun. Der Vorteil von Typinferenz, den ich annehme, ist weniger Ausführlichkeit und weniger geschriebener Code. Wenn Sie jedoch häufiger Code lesen, möchten Sie wahrscheinlich lesbaren Code. …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.