Ответы на этот вопрос устарели:
Может ли D поддерживать встроенную систему, на которой не будет установлена ОС?
D может быть кросс-компилированным для ARM Linux и для ARM Cortex-M . Некоторые проекты направлены на создание библиотек для архитектур Cortex-M , таких как MiniLibD для STM32 или этого проекта , который использует универсальную библиотеку для STM32 . (Вы можете реализовать свою собственную минималистичную ОС в D на ARM Cortex-M.)
Имеет ли прямое заявление о том, что он не поддерживает 16-битные процессоры, выводит его полностью из встроенных приложений, работающих на таких машинах? Иногда вам не нужен молоток, чтобы решить вашу проблему.
Нет, см. Ответ выше ... (Но я не ожидаю, что "меньшие" архитектуры, чем Cortex-M, будут поддерживаться в ближайшем будущем.)
Сборка мусора хороша в Windows или Linux, но, к сожалению, иногда встроенные приложения должны выполнять явное управление памятью.
Вы можете написать Бесплатный код для сбора мусора . (Фонд D, похоже, нацелен на стандартную библиотеку "GC free совместимый" Phobos, но это в стадии разработки.)
Проверка границ массива, тебе это нравится, ты ненавидишь это. Отлично подходит для обеспечения проектирования, но не всегда допустимо из-за проблем с производительностью.
(Как вы сказали, это зависит от вашего "личного вкуса" и проектных решений. Но я бы предположил приемлемые накладные расходы производительности для проверки границ из-за опыта разработчиков компилятора D и целей разработки D).
Какое значение имеет поддержка многопоточности для встроенной системы, не работающей под управлением ОС? У нас есть клиент, которому не нравятся прерывания. Гораздо меньше ОС / многопоточность.
(В чем вопрос? Можно реализовать многопоточность, используя возможности языка D, например, , как объяснено в этом вопросе . Кстати: если вы хотите использовать прерывания, рассмотрите этот проект "hello world" для Cortex-M3 .)
Существует ли D-Lite для встроенных систем?
Подмножество SafeD D предназначено для встроенного домена.