D Sprooch Compiler Verëffentlechung 2.100

D'Entwéckler vun der D Programméiersprooch hunn d'Verëffentlechung vum Haaptreferenz Compiler DMD 2.100.0 presentéiert, deen GNU/Linux, Windows, macOS a FreeBSD Systemer ënnerstëtzt. De Compiler Code gëtt ënner der gratis BSL (Boost Software License) verdeelt.

D ass statesch getippt, huet eng Syntax ähnlech wéi C / C ++, a bitt d'Leeschtung vu kompiléierte Sproochen, wärend e puer vun der Entwécklungseffizienz a Sécherheetsvirdeeler vun dynamesche Sprooche geléint. Zum Beispill gëtt et Ënnerstëtzung fir assoziativ Arrays, Typinferenz, automatesch Gedächtnismanagement, Parallelprogramméierung, en optionalen Müllsammler, e Schablounsystem, Metaprogramméierungskomponenten, d'Fäegkeet fir C Bibliothéiken ze benotzen, an e puer C++ an Objective-C Bibliothéiken.

Ënnert den Ännerungen an der neier Verëffentlechung:

  • Den ale Stil vun der Bedreiwer Iwwerlaaschtung, déi an der D1 Branche benotzt gouf, gouf ofgeschaaft. Ersetzt opNeg, opAdd_r, opAddAssign, etc. koum opUnary, opBinary, opBinaryRight an opOpAssign. Den alen Stil vum Bedreiwer Iwwerlaascht gouf am Joer 2019 ofgeschaaft a wäert e Feeler werfen ab Verëffentlechung 2.100.
  • D'Schlësselwuert läschen ass zënter 2018 ofgeschnidden. Amplaz ze läschen, sollt Dir d'Funktioun zerstéieren oder core.memory.__delete benotzen.
  • En neit @mustuse Attribut gouf implementéiert dat op Struktur- a Gewerkschaftstypen als alternativ Method fir Fehlerhandhabung applizéiert ka ginn wann de Code net Ausnahmen handhaben kann (zum Beispill an @nogc Blocks). Wann en Ausdrock markéiert mat dem @mustuse Attribut net am Code benotzt gëtt, generéiert de Compiler e Feeler.
  • Fir statesch Arrays ass d'Benotzung vun der ".tupleof" Eegeschafte erlaabt d'Sequenz vu Wäerter (lvalue) vun all Element vun der Array ze kréien. void foo(int, int, int) { /* … */ } int[3] ia = [1, 2, 3]; foo(ia.tupleof); // analog foo(1, 2, 3); fléien[3] fa; fa.tupleof = ia.tupleof; // einfach Aufgab fa = ia Resultater an engem Feeler behaapten (fa == [1F, 2F, 3F]);

Source: opennet.ru

Setzt e Commentaire