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.



24
Interessante oder einzigartige Typen in Programmiersprachen? [geschlossen]
Aus heutiger Sicht passt diese Frage nicht zu unserem Q & A-Format. Wir erwarten, dass die Antworten durch Fakten, Referenzen oder Fachwissen gestützt werden, aber diese Frage wird wahrscheinlich Debatten, Argumente, Abstimmungen oder erweiterte Diskussionen hervorrufen. Wenn Sie der Meinung sind, dass diese Frage verbessert und möglicherweise erneut geöffnet werden …

1
Verwendung von Eindeutigkeitstypen zur Implementierung einer sicheren Parallelität
Ich interessiere mich seit einiger Zeit für Einzigartigkeitstypen als Alternative zu Monaden in reinen funktionalen Sprachen. Leider ist dies eine Art esoterischer Bereich der CS-Forschung, und Online-Ressourcen zum Programmieren mit Eindeutigkeitstypen sind rar gesät. Es ist offensichtlich, wie Eindeutigkeitstypen verwendet werden können, um statusbezogene Datenstrukturen wie Referenzen ("Boxen") und Arrays …


5
Wäre es sinnvoll, Objekte (anstelle von primitiven Typen) für alles in C ++ zu verwenden?
Während eines Projekts, an dem ich kürzlich gearbeitet habe, musste ich viele Funktionen verwenden, die so aussehen: static bool getGPS(double plane_latitude, double plane_longitude, double plane_altitude, double plane_roll, double plane_pitch, double plane_heading, double gimbal_roll, double gimbal_pitch, double gimbal_yaw, int target_x, int target_y, double zoom, int image_width_pixels, int image_height_pixels, double & Target_Latitude, …

9
Welche statisch typisierten Sprachen unterstützen Schnittpunkttypen für Funktionsrückgabewerte?
Anfangshinweis: Diese Frage wurde nach mehreren Änderungen geschlossen, da mir die richtige Terminologie fehlte, um genau zu sagen, wonach ich suchte. Sam Tobin-Hochstadt hat dann einen Kommentar gepostet, der mich genau erkennen ließ, was das war: Programmiersprachen, die Schnittpunkttypen für Funktionsrückgabewerte unterstützen. Nachdem die Frage erneut geöffnet wurde, habe ich …


9
Sollte man die Werte einer Aufzählung mit Unit-Tests testen?
Wenn Sie eine Aufzählung nur mit Werten haben (keine Methoden wie in Java) und diese Aufzählung Teil der Geschäftsdefinition des Systems ist, sollte man Unit-Tests dafür schreiben? Ich dachte, dass sie geschrieben werden sollten, auch wenn sie einfach und überflüssig erscheinen könnten. Ich denke, dass was die Geschäftsspezifikation betrifft, explizit …

3
Was ist der Grund für die Verwendung einer Schnittstelle gegenüber einem generisch eingeschränkten Typ?
In objektorientierten Sprachen, die generische Typparameter unterstützen (auch als Klassenvorlagen und parametrischer Polymorphismus bezeichnet), ist es häufig möglich, eine Typbeschränkung für den Typparameter anzugeben, sodass er abgeleitet wird von einem anderen Typ. Dies ist beispielsweise die Syntax in C #: //for classes: class ExampleClass<T> where T : I1 { } …

2
(Un-) Vorteile der strukturellen Typisierung
Ich habe gerade diesen Vortrag von Daniel Spiewak gesehen, in dem er über die Vorteile der strukturellen Typisierung im Vergleich zur nominalen Typisierung von Scala und Java spricht . Ein Beispiel für diesen Unterschied wäre der folgende Java-Code public interface Foo { public int length(); } public interface Bar { …

1
Warum kann Haskell eine wiederholte Auswertung ohne die Einschränkung des Monomorphismus nicht vermeiden?
Ich habe neulich gerade das Lernen von Youahaskell beendet und habe versucht, die Monomorphismus-Einschränkung zu verstehen, wie sie im Haskell-Wiki beschrieben wird . Ich denke, ich verstehe, wie der MR wiederholte Auswertungen verhindern kann, aber ich verstehe nicht, warum diese wiederholten Auswertungen mit weitaus einfacheren Mitteln nicht vermieden werden können. …


1
Warum brauchst du höhere Arten?
Einige Sprachen erlauben Klassen und Funktionen mit Typparametern (z. B. List<T>wo Tein beliebiger Typ sein kann). Zum Beispiel können Sie eine Funktion haben wie: List<S> Function<S, T>(List<T> list) In einigen Sprachen kann dieses Konzept jedoch um eine Stufe höher erweitert werden, sodass Sie eine Funktion mit der Signatur haben: K<S> …

2
Werden Typen in Haskell gelöscht?
Haskell hat eine Vorstellung von "generischen Funktionen", die eine gewisse Ähnlichkeit mit gewöhnlichem Lispeln aufweist - da ich weder Erfahrung mit Haskell noch mit gewöhnlichem Lispeln habe, könnte ich hier sehr ungefähr sein. Dies bedeutet, dass man eine generische to_stringEinrichtung definieren kann, um eine Zeichenfolgendarstellung für alle Typen zu definieren. …

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.