O le au atiaʻe o le D programming language na tuʻuina atu le tuʻuina atu o le tuʻufaʻatasiga autu DMD 2.100.0, lea e lagolagoina GNU / Linux, Windows, macOS ma FreeBSD faiga. O le code compiler e tufatufaina i lalo ole BSL (Boost Software License) e leai se totogi.
D o lo'o lolomi fa'amau, e iai se fa'asologa e tutusa ma le C/C++, ma tu'uina atu le fa'atinoga o gagana tu'ufa'atasia, a'o fa'aano mai nisi o fa'amanuiaga tau atina'e ma le saogalemu o gagana fa'amalosi. Mo se faʻataʻitaʻiga, o loʻo tuʻuina atu ai le lagolago mo fesoʻotaʻiga fesoʻotaʻiga, ituaiga inference, pulega otometi manatua, polokalame tutusa, o le aoina o lapisi, se faiga faʻataʻitaʻiga, metaprogramming vaega, le mafai ona faʻaoga C faletusi, ma nisi C ++ ma Objective-C faletusi.
Suiga i le faʻasalalauga fou e aofia ai:
- O le sitaili tuai o le faʻaogaina o le faʻaogaina o loʻo faʻaaogaina i le lala D1 ua faʻagata. Suia opNeg, opAdd_r, opAddAssign, ma isi. sau opUnary, opBinary, opBinaryRight ma opOpAssign. O le sitaili tuai o le faʻaogaina o le faʻaaogaina na faʻaumatia i le 2019 ma o le a lafoina se mea sese e pei o le faʻamalolo 2.100.
- O le upu tapē ua le toe fa'aaogaina talu mai le 2018. Nai lo le tapeina, e tatau ona e faʻaogaina le faʻaumatia poʻo le core.memory.__delete galuega.
- O se uiga fou @mususe ua faʻatinoina e mafai ona faʻaaogaina i le faʻatulagaina ma le faʻapotopotoga o se isi auala o le faʻaogaina o mea sese pe a le mafai e le code ona taulimaina tuusaunoaga (mo se faʻataʻitaʻiga, i @nogc poloka). Afai e le faʻaogaina se faʻamatalaga ua faailogaina i le uiga @mususe i le code, o le a faia e le tagata faʻapipiʻi se mea sese.
- Mo static arrays, o le faʻaaogaina o le ".tupleof" meatotino e faʻatagaina e maua ai le faʻasologa o tau (lvalue) o elemene taʻitasi o le array. void foo(int, int, int) { /* … */ } int[3] ia = [1, 2, 3]; foo(ia.tupleof); // analog foo(1, 2, 3); opeopea[3] fa; fa.tupleof = ia.tupleof; // fa'atonuga faigofie fa = ia i'u i se fa'amatalaga sese(fa == [1F, 2F, 3F]);
puna: opennet.ru