31.12.09 23:22Новогодний релиз DMD: 1.054 & 2.038

DProgramming.ru поздравляет всех С новым годом!

Walter Bright поздравил сообщество мощным багфикс-релизом DMD:

D1 changelog
DMD 1.054
D2 changelog
DMD 2.038

Коммментариев нет | Рубрики: DMD, Компиляторы, Язык Ди

08.12.09 23:53DMD 1.053 & 2.037

Вышли новые релизы основного компилятора Ди: в первой версии - только багфиксы, в то время как во второй произошли следующие изменения:

  • Условные выражения ?: теперь могут быть изменяемыми “левыми” значениями.
  • Константа-массив (ArrayLiteral) теперь является динамическим.
  • Для array.length добавлена поддержка op=.
  • Оператор ?: применяется теперь ко всем элементам встроенных массивов и словарей, а не только к первому.
  • При конкатенации массива с данными теперь позволяется неявное приведение данных к типу элемента массива.
  • Между [ ] больше не разрешается оператор “запятая”.
  • ClassInfo теперь внедрен в TypeInfo_Class.
  • Убран -safe, добавлен -noboundscheck.
  • Bugzilla 3481: PATCH: opPow(), x ^^ y as a power operator
  • Добавлен opDispatch
  • Свойства (properties) теперь могут иметь только единственный аргумент или ни одного.
  • properties cannot be overloaded with non-properties
  • std.math: Добавлены FloatControl, IeeeFlags для поддержки исключений для чисел с плавающей запятой.
  • std.math: Обратные тригонометрические функции теперь pure nothrow.

DMD1 changelog
DMD 1.053

DMD2 changelog
DMD 2.037

Комментарии 2 | Рубрики: DMD, Компиляторы, Язык Ди

16.06.09 20:08Gold-релиз MiniD2

Jarrett Billingsley сообщает о том, что многолетняя разработка MiniD достигла “золота”!

MiniD2 - интерпретируемый кросс-платформенный язык программирования, написанный на DigitalMars D1 + Tango, созданный как для непосредственного использования, так и для скриптования приложений на D.

Данная версия - глубокая переработка и доработка MiniD1: более полный и проработанный синтаксис и реализация, собственные heap & GC и серьезно увеличенная производительность языка.

Страница проекта
Объявление в группе новостей digitalmars.com D.announce
Tutorial

Коммментариев нет | Рубрики: Компиляторы, Язык Ди

11.06.09 15:26Книга Александреску о Ди доступна для предзаказа

Amazon.com

Комментарии 3 | Рубрики: Язык Ди

19.05.09 11:50DMD 1.045 & 2.030

Данные релизы основных компиляторов D изначально предназначались для предварительного и пробного использования, но несмотря на то, что анонса от Walter Bright не было, обновления страниц логов изменений были замечены участниками сообщества и опубликованы в новостной группе.

http://digitalmars.com/d/1.0/changelog.html#new1_045
http://ftp.digitalmars.com/dmd.1.045.zip
Основные изменения:
- добавлены изменения для поддержки Solaris OS от Unknown W. Brackets
- в object.d в ClassInfo добавлена структура .typeinfo
- множество багфиксов segfault, stack overflow и hang

http://www.digitalmars.com/d/2.0/changelog.html#new2_030
http://ftp.digitalmars.com/dmd.2.030.zip
- аналогичное множество багфиксов
- различные изменения в Phobos
- крупное изменение для улучшения работы с многопоточностью: Global storage по умолчанию становится Thread Local Storage, поэтому все статические и глобальные переменные больше не находятся в общем сегменте памяти. Подробнее об этом Walter Bright пишет в Migrating to Shared.

upd DMD 1.045 поддерживается trunk-версией Tango. Возможно, чтобы скомпилировать tango-base-dmd lib, понадобится вручную изменить строчку кода согласно tango ticket 1655 (данная нерешенная (но легко и быстро решаемая) проблема замечена 18 мая).

Комментарии 2 | Рубрики: DMD, Компиляторы, Язык Ди

29.01.09 20:33Descent 0.5.4

Вышла новая версия широко известного в узких кругах плагина для разработки проектов на D в IDE Eclipse.

Нововведения:

- Просмотр результата обработки набираемого исходного кода компилятором переднего плана: видны преобразования, разворачивания foreach и оптимизации, то есть преобразованный текст модуля, отправляющийся непосредственно на анализ и трансляцию;

- Просмотр mixin при наведении курсора на его объявление;

- Наведение курсора на функцию или экземпляр шаблона с нажатием ctrl+shift показывает ее результат времени компиляции;

- Добавлены шаблоны кода для перегруженных операторов - теперь их не надо помнить наизусть, достаточно набрать “op” и нажать ctrl+space;
- Исправлен ticket #160: новые опции автозаполнения: “classinfo” и “outer” показываются для классов (когда доступны), “ptr” и “funcptr” показываются для делегатов.

Новость на английском:

http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D.announce&article_id=14638

Видео, демонстрирующее обработку набираемого кода фронт-эндом компилятора на лету:

Коммментариев нет | Рубрики: Инструменты, Примеры кода

21.10.08 19:20DMD 1.036 и 2.020

Во второй версии phobos встроен в druntime и также в библиотеки (phobos libraries) (спасибо Шону Келли). Это позволит Танго и Фобосу использовать общее ядро. Еще масса структурных изменений… некоторые пакеты и также имена функций переименованы с учетом стиля именования в Танго.

Ди 1: список изменений, архивчик.
Ди 2: список изменений, архивчик.

Комментарии 10 | Рубрики: DMD, Компиляторы, Язык Ди

06.10.08 17:42Конференция по Танго 2008: MiniD

Предоставили новенькое видео с конференции по Танго 2008. На этот раз рассказывают про многообещающий скриптовый язык программирования miniD.

Докладывает Джаретт Биллингсли:

MiniD - то, что получится, если размешать Луа в Ди в одном боченке и перепить этой дряни. Маленький, да удаленький скриптовый язык, предназначенный для использования вместе с Ди. А без Танго, новая реализация была бы, пожалуй, невозможна.

Слайды, видео-канал.

Источник.

Коммментариев нет | Рубрики: Tango, Библиотеки, Язык Ди

25.09.08 18:08Новый язык программирования Delight

Delight - императивный, объектно-ориентированный язык программирования с питоно-подобным синтаксисом. Основан на Ди. Мажорные возможности:

  • Питоно-подобный синтаксис;
  • Классы, интерфейсы и шаблоны;
  • Компилируется в эффектвный нативный код;
  • Статическая проверка типов;
  • Включение зависимостей;
  • Встроенное логгирование.

Пример приложения Hello World на Delight:

import dlt.io

class Main:
    void main(Printer stdout):
        stdout("Hello World!\n")

Подробности, Обсуждение

1 Комментарий | Рубрики: Примеры кода, Язык Ди

19.09.08 03:51Проект DProgramming.ru: графический движок MoonGlide

Опубликован проект кросс-платформенного графического движка MoonGlide, создаваемого на D/Tango/Code::Blocks под лицензией GPL v3, подробности на форуме.

Коммментариев нет | Рубрики: Derelict, GUI, Tango, Игрострой, Примеры кода