Dylan Graham zaprezentował lekki moduł wykonawczy LWDR do programowania D mikrokontrolerów wyposażonych w system operacyjny czasu rzeczywistego (RTOS). Obecna wersja przeznaczona jest dla mikrokontrolerów ARM Cortex-M. Rozwój nie ma na celu pełnego uwzględnienia wszystkich możliwości D, ale zapewnia podstawowe narzędzia. Alokacja pamięci odbywa się ręcznie (nowe/usuń), nie ma modułu zbierającego elementy bezużyteczne, ale jest wiele haczyków do korzystania z narzędzi RTOS.
Prezentowana wersja obsługuje:
- alokacja i niszczenie instancji klas i stert dla struktur;
- niezmienniki;
- twierdzi;
- umowy, podstawowe narzędzia RTTI (na koszt Typeinfo);
- interfejsy;
- funkcje wirtualne;
- klasy abstrakcyjne i statyczne;
- tablice statyczne;
- przydzielanie, zwalnianie i zmiana rozmiaru tablic dynamicznych;
- dodawanie elementów do tablicy dynamicznej i łączenie tablic dynamicznych.
W statusie funkcji eksperymentalnych: wyjątki i przedmioty do rzucania (ponieważ wymagają wsparcia padlinożerców).
Nie zaimplementowano:
- konstruktory i destruktory modułów;
- Informacje o module;
- zmienne lokalne wątku (TLS);
- delegaci i zamknięcia;
- tablice asocjacyjne;
- udostępniane i synchronizowane dane;
- zahaszowane obiekty.
Źródło: opennet.ru