Als «language-design» getaggte Fragen

Fragen zum Design und zur Struktur von Programmiersprachen.



12
Warum haben die meisten Programmiersprachen ein spezielles Schlüsselwort oder eine spezielle Syntax zum Deklarieren von Funktionen? [geschlossen]
Die meisten Programmiersprachen (sowohl dynamisch als auch statisch typisierte Sprachen) haben spezielle Schlüsselwörter und / oder Syntax, die sich stark von der Deklaration von Variablen zum Deklarieren von Funktionen unterscheiden. Ich sehe Funktionen so, als würde man eine andere benannte Entität deklarieren: Zum Beispiel in Python: x = 2 y …

4
Wie schnell kann Go gehen?
Go ist eine der wenigen Sprachen, die 'nah am Metall' laufen sollen, dh sie wird kompiliert, statisch typisiert und führt Code nativ ohne VM aus. Dies sollte es einen Geschwindigkeitsvorteil gegenüber Java, C # und dergleichen geben. Es scheint jedoch, dass es hinter Java steckt (siehe das Programmiersprachen-Shootout ) Ich …


5
Warum hat C # keinen lokalen Gültigkeitsbereich für Fallblöcke?
Ich habe diesen Code geschrieben: private static Expression<Func<Binding, bool>> ToExpression(BindingCriterion criterion) { switch (criterion.ChangeAction) { case BindingType.Inherited: var action = (byte)ChangeAction.Inherit; return (x => x.Action == action); case BindingType.ExplicitValue: var action = (byte)ChangeAction.SetValue; return (x => x.Action == action); default: // TODO: Localize errors throw new InvalidOperationException("Invalid criterion."); } } …


2
Was sind die 4. und 5. Programmiersprachengeneration? Gibt es noch mehr davon? [geschlossen]
Beliebte Programmiersprachen (C #, Java, C ++) sind alle Sprachen der 3. Generation (mit einem höheren Abstraktionsgrad von den physischen Teilen der Maschine). Assemblersprachen werden als 2. und Maschinensprachen als Sprachen der 1. Generation klassifiziert. Anfänglich dachte ich, SQL sollte als Sprache der 4. Generation betrachtet werden, da es abstrakter …

7
Warum werden so viele Sprachen als Wert übergeben?
Sogar Sprachen, in denen Sie explizite Zeiger-Manipulationen wie C durchführen, werden immer als Wert übergeben (Sie können sie als Referenz übergeben, aber das ist nicht das Standardverhalten). Was ist der Vorteil davon, warum werden so viele Sprachen von Werten und warum werden andere als Referenz weitergegeben ? (Ich verstehe, dass …






4
Warum befindet sich .compareTo () in einer Schnittstelle, während .equals () in Java in einer Klasse enthalten ist?
Ich möchte wissen, warum das .compareTo()in der ComparableSchnittstelle ist, während eine Methode wie .equalsin der ObjectKlasse ist. Mir erscheint es willkürlich, warum eine Methode wie diese .compareTo()nicht schon in der ObjectKlasse ist. Zur Verwendung .compareTo()implementieren Sie die ComparableSchnittstelle und implementieren die .compareTo()Methode für Ihre Zwecke. Für die .equals()Methode überschreiben Sie …

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.