| D | |
|---|---|
| Paradigmen: | imperativ, objekt-orientiert, generisch, modular |
| Erscheinungsjahr: | 2007 |
| Entwickler: | Walter Bright |
| Aktuelle Version: | 1.035 (stable), 2.019 (alpha) (3. September 2008[1][2]) |
| Typisierung: | Stark, statisch |
| wichtige Implementierungen: | DMD[3], GDC[4] |
| Einflüsse: | C, C++, Java, C# |
D ist eine Programmiersprache, die sich äußerlich stark an C++ anlehnt. Ebenso wie C++ ist D für die Systemprogrammierung geeignet. D wird seit 1999 von Walter Bright entwickelt und wurde am 3. Januar 2007 in der stabilen Version 1.0 veröffentlicht.[5]
Seit dem 17. Juni 2007 gibt es einen experimentellen 2.0-er Version-Zweig, in dem die Sprache weiter entwickelt wird.
Inhaltsverzeichnis |
Die Sprache D übernimmt die meisten Sprachmittel der Sprache C. Auch die C-Standardbibliothek ist Bestandteil von D. Dadurch besteht Kompatibilität zu in C geschriebenen Programmen. Kompatibilität mit C++ gibt es hingegen nicht.
Ebenso wie C++ ist D eine objektorientierte, imperative Programmiersprache und verfügt über Templates und überladbare Operatoren. Gegenüber C++ bietet es außerdem Design by contract, Module und eine integrierte automatische Speicherbereinigung. Letztere kann sowohl global als auch für einzelne Objekte deaktiviert und durch eine eigene Speicherverwaltung ersetzt werden.
Es gibt zur Zeit (2008) zwei Compiler für die Sprache D, den DMD (Digital Mars D)[3] vom Erfinder Walter Bright für Windows und Linux, sowie GDC [4], eine Implementierung für GCC für verschiedene Plattformen. Des Weiteren gibt es inzwischen zwei Compiler für D, die selbst in D programmiert wurden. Dies sind der DIL Compiler und Dang, beide Compiler sind LLVM kompatibel.
// Programm, geschrieben in D, das seine Parameter ausgibt import std.stdio; // importiert die Funktion writefln() void main(string[] args) { foreach(int i, string a; args) { writefln("Parameter %d = '%s'", i, a); // Jeder Eintrag im Feld args wird ausgegeben. } }
Erläuterung
Der main-Funktion werden die Parameter als ein Feld von Zeichenketten (Strings) übergeben. Ruft man dieses Programm unter Windows mit beispiel.exe -win -s auf, dann gibt es diesen Text in einem Konsolen-Fenster aus:
Parameter 0 = 'beispiel.exe' Parameter 1 = '-win' Parameter 2 = '-s'
Siehe auch: Hallo Welt in D