Вышел компилятор языка D 2.082
Состоялся релиз основного эталонного компилятора DMD 2.082.0, который поддерживает системы GNU/Linux, Windows, macOS и FreeBSD, и архитектуры x86, x86_64, x64.
В новой версии:
- Расширены возможности пакетного менеджера DUB: улучшена обработка зависимостей, добавлена поддержка переменных в настройках сборки и убрана автоматическая ежедневная проверка обновлений (обновления теперь проверяются только при запуске "dub upgrade");
- Добавлены сборки для платформы Windows, заверенные цифровым сертификатом;
- Расширен синтаксис определяемых пользователем атрибутов;
- В подмножество языка "-BetterC", которое позволяет разрабатывать на D полностью совместимые с Си библиотеки, добавлена возможность использования литералов массивов в инициализаторах (например, "Sint[6] a1 = [Sint(1), Sint(2), Sint(3), Sint(1), Sint(2), Sint(3)];");
- Добавлена опция командной строки "--DRT-trapException=0" для отключения генерации исключений;
- В модуль std.array добавлена функция staticArray
Кроме этого следует отметить выпуск компилятора LDC 1.12.0-beta1, развиваемого на базе наработок проекта LLVM. В новой версии обеспечена поддержка LLVM 6.0, проведена оптимизация математической библиотеки, добавлена поддержка LTO-оптимизаций для платформы Win64.
Напомним, что язык D использует статическую типизацию, обладает синтаксисом, схожим с C/C++, и обеспечивает производительность компилируемых языков, при этом заимствуя некоторые полезные возможности динамических языков в области эффективности разработки и обеспечения безопасности. Например, предоставляется поддержка ассоциативных массивов, косвенное определение типов, автоматическое управление памятью, средства параллельного программирования, опциональный сборщик мусора, система шаблонов, компоненты для метапрограммирования, возможность использовать библиотеки на языке C, а также некоторые библиотеки на C++ и Objective-C.