Ang isang runtime para sa programming microcontrollers ay ipinakilala para sa wikang D

Nagpakita si Dylan Graham ng isang magaan na runtime na LWDR para sa D programming ng mga microcontroller na nilagyan ng real-time na operating system (RTOS). Ang kasalukuyang bersyon ay naglalayong sa ARM Cortex-M microcontrollers. Ang pag-unlad ay hindi naglalayong ganap na masakop ang lahat ng mga kakayahan sa D, ngunit nagbibigay ng mga pangunahing tool. Ang paglalaan ng memorya ay ginagawa nang manu-mano (bago / tanggalin), walang kolektor ng basura, ngunit mayroong isang bilang ng mga kawit para sa paggamit ng mga tool sa RTOS.

Ang ipinakita na bersyon ay sumusuporta sa:

  • paglalaan at pagkasira ng klase at tambak na mga pagkakataon para sa mga istruktura;
  • invariants;
  • iginiit;
  • mga kontrata, mga pangunahing tool sa RTTI (sa gastos ng Typeinfo);
  • mga interface;
  • virtual function;
  • abstract at static na mga klase;
  • mga static na array;
  • paglalaan, pagpapalaya at pagbabago ng laki ng mga dynamic na array;
  • pagdaragdag ng mga elemento sa isang dynamic na array at pagsasama-sama ng mga dynamic na array.

Sa status ng mga pang-eksperimentong feature: mga exception at Throwable (dahil nangangailangan sila ng suporta sa scavenger).

Hindi ipinatupad:

  • module constructors at destructors;
  • ModuleInfo;
  • mga lokal na variable ng thread (TLS);
  • mga delegado at pagsasara;
  • associative arrays;
  • nakabahagi at naka-synchronize na data;
  • na-hash na mga bagay.

Pinagmulan: opennet.ru

Magdagdag ng komento