LINUX.ORG.RU

DMD 1.041 и DMD 2.026

 , , ,


0

0

К новому релизу свободного официального компилятора свободного языка программирования D, разрабатываемого несколькими гуру C++ в свободное время произошли следующие изменения:

  • Опубликован исходный код всего компилятора, включая backend. Большая часть под GPL или Artistic License, но часть - Public Domain и DMD License.
  • Увеличена точность математических функций на MacOS X и в три раза увеличена их скорость на всех платформах.
  • Возможность обьявлять структуры вложенные в функции с доступом к контексту. (Только DMD 2.026)
  • Множество исправленных ошибок.

DMD 1.041 Changelog

DMD 2.026 Changelog

Прямая ссылка на архив DMD 1.041

Прямая ссылка на архив DMD 2.026

>>> Подробности

★★★★★

Проверено: Shaman007 ()

Ответ на: комментарий от Crocodille

D лучше как язык, это не принимая во внимание факт на чем вала основана, надстройка над макросами, GObject и т. д. А чем Д лучше - загляните в спеки D и сравните возможности обоих языков. У валы единственный плюс - большая портируемость, все платформы где есть компилятор C и скомпилирована glib. На этом преимущества заканчиваются. Хотя может быть там более богатая интроспекция, это слабое место D. Насчет этого не уверен. В любом случае вместо валы я бы выбрал mono тогда уж.

eldar_insafutdinov
()
Ответ на: комментарий от naryl

> closed source is no longer acceptable...

Боже мой! Не прошло и 10 лет, как сообразили, что полтора инвалида на 40 часов в неделю не сдвинут компилер лучше, чем тысячи по 2 часа!

Но остаётся главный вопрос: как будет происходить улучшение системы? Будет голосование за новые фичи? А если захочется выкинуть ненужные? Изменить синтаксис?

matumba ★★★★★
()
Ответ на: комментарий от legolegs

> Чем вообще D лучше C++?

Вообще - лучше. За часностями - в гугл, неча людей напрягать.

matumba ★★★★★
()
Ответ на: комментарий от cdome

> 7. Есть крутейший предпроцессор, который позволяет вводить новые конструкций языка.

Как фича для домашнего использования - да. А вам не страшно будет разбираться в чужом коде с "новым синтаксисом"? Особенно, если автор особо не шарит в препроцессоре и уже наделал там ошибок? Получается, помимо основного кода придётся разбираться ещё и с побочным.

Да и у кого не зачешутся руки наделать своих велосипедов! Страшная это вещь - "свой синтаксис". :))

matumba ★★★★★
()
Ответ на: комментарий от cdome

> Смотрел и на D , и на haskell, и на prolog.
> В итоге вибрал ocaml.


Странноватый выбор. Это как пошёл выбирать говядину или свинину, но как всегда выбрал "Клинское". :)))

Для промышленного кода язык D конечно сыроват - как сам компилер, так и библиотеки (даже с БД ещё никак не разберутся!). Но как будущая альтернатива мелкомягкому засилью - вполне. Не радует только "загромождённость" языка - уж слишком много всего понапихано. Простота - вот ключ к широкому распространению системы.

matumba ★★★★★
()
Ответ на: комментарий от matumba

> Но остаётся главный вопрос: как будет происходить улучшение системы? Будет голосование за новые фичи? А если захочется выкинуть ненужные? Изменить синтаксис?

Неофициально улучшение системы происходит примерно так:
1. Народ предлагает и обсуждает фичи.
2. Народ голосует, нужны ли они.
3. Уолтер Брайт и Андрей Александреску обсуждают каждую предложенную фичу независимо от народа.
4. Уолтер Брайт решает нужна ли она и при положительном ответе добавляет в список TODO.

Семантически C++ загромождён в несколько раз больше, чем D. Синтаксически да, D сложнее.

naryl ★★★★★
() автор топика
Ответ на: комментарий от naryl

> Синтаксически да, D сложнее.

Скажи это Брайту :) Простой синтаксис был одной из целей D (ИМХО, он и сейчас проще Си++ в этом плане).

tailgunner ★★★★★
()
Ответ на: комментарий от matumba

> полтора инвалида на 40 часов в неделю не сдвинут компилер лучше, чем тысячи по 2 часа!

В высшей мере спорный тезис. У семи нянек...

yk4ever
()

Ладно. Убедили поиграться.

eXOR ★★★★★
()

Этот ваш Ди

> Прямая ссылка на архив DMD 2.026

Это x86 версия? Насколько я понял, версии этого дмд для amd64 нет в природе? В 2009 году, когда *все* современные процессоры (для буквоедов: настольные и серверные) 64-битные, а в новые ЭВМ не ставят меньше 4G RAM -- это πιζδεψ, мягко говоря. Не знаю, не знаю, уже это отталкивает. А то, что две версии стандартной библиотеки...

a3
()
Ответ на: Этот ваш Ди от a3

> Это x86 версия?
Это исходники с прекомпиленными для x86 бинарниками. Кодогенератор есть только в x86.

> Насколько я понял, версии этого дмд для amd64 нет в природе?

Нет. Для практических целей, а не на поиграться его вообще лучше избегать. http://www.dsource.org/projects/ldc/wiki/PlatformSupport

> А то, что две версии стандартной библиотеки...

Две стандартных библиотеки в D2 смогут работать на едином рантайме.

naryl ★★★★★
() автор топика
Ответ на: комментарий от naryl

> Нет. Для практических целей, а не на поиграться его вообще лучше избегать. http://www.dsource.org/projects/ldc/wiki/PlatformSupport

Этот урл у меня не грузится. ldc поддерживает самую последнюю версию языка и в каком он состоянии? (активность)

a3
()
Ответ на: комментарий от a3

Исходники последний раз изменялись 22 минуты назад. Думаю проект активен. :) Поддерживает последнюю версию первой ветки языка и в планах поддержка второй ветки. Лучше подождать релиза. Я напишу новость когда будет ldc 1.0.

dmd иногда генерирует медленный код и только для x86.
gdc почти умер.

naryl ★★★★★
() автор топика
Ответ на: комментарий от naryl

> в планах поддержка второй ветки

> dmd иногда генерирует медленный код и только для x86.

> gdc почти умер.

Обнадеживает, да... :)

a3
()
Ответ на: комментарий от a3

Не следует огорчаться сильно. бэк-енд dmd не так уж трагично уступает llvm и gcc. В плане 64 бит, ldc x86-64 практически не отстает ldc X86, по-крайней мере люди которые его используют не сообщают о глобальных проблемах. tango за последние месяцы была также адаптирована для работы с 64 бит. Через месяц или два(максимум) уже точно должен быть релиз ldc, на линуксе с обеими архитектурами. Но это не отменяет использование dmd, это очень шустрый компилятор. Windows - тут пока один выбор, dmd. mac - и dmd и ldc.

eldar_insafutdinov
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.