Dylan Graham presenterte en lett runtime LWDR for D-programmering av mikrokontrollere utstyrt med et sanntidsoperativsystem (RTOS). Den nåværende versjonen er rettet mot ARM Cortex-M mikrokontrollere. Utviklingen tar ikke sikte på å dekke alle D-kapasiteter fullt ut, men gir grunnleggende verktøy. Minnetildeling gjøres manuelt (ny/slett), det er ingen søppeloppsamler, men det finnes en rekke kroker for bruk av RTOS-verktøy.
Den presenterte versjonen støtter:
- tildeling og ødeleggelse av klasse- og heapforekomster for strukturer;
- invarianter;
- hevder;
- kontrakter, grunnleggende RTTI-verktøy (på bekostning av Typeinfo);
- grensesnitt;
- virtuelle funksjoner;
- abstrakte og statiske klasser;
- statiske matriser;
- tildele, frigjøre og endre størrelse på dynamiske matriser;
- legge til elementer i en dynamisk matrise og sammenkoble dynamiske matriser.
I statusen til eksperimentelle funksjoner: unntak og Throwables (ettersom de krever scavenger-støtte).
Ikke implementert:
- modul konstruktører og destruktorer;
- ModulInfo;
- tråd lokale variabler (TLS);
- delegater og nedleggelser;
- assosiative arrays;
- delte og synkroniserte data;
- hashed objekter.
Kilde: opennet.ru