URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 90267
[ Назад ]

Исходное сообщение
"Вышла новая версия dmd 2.063, компилятора для языка D"

Отправлено opennews , 31-Май-13 11:50 
Вышла (http://forum.dlang.org/thread/ko7qgc$14i1$1@digitalmars.com) новая версия кроссплатформенного компилятора языка программирования D (http://ru.wikipedia.org/wiki/D_%28%D1%8F%... -  dmd 2.063 (http://dlang.org). С предыдущего релиза в компилятор и системную библиотеку было внесено (http://dlang.org/changelog.html) более 260 исправлений и улучшений. В новой версии подверглась существенной переработке библиотека управления процессами std.process, добавлена возможность использовать шаблоны внутри функций, а так же внесено несколько сотен других улучшений и дополнений. В настоящий момент идут активные работы (http://dlang.ru/d-budet-perepisan-s-s-na-sam-d) по бутстраппингу компилятора, нацеленных на то, чтобы переписать компилятор с языка С++ на сам D.

URL: http://forum.dlang.org/thread/ko7qgc$14i1$1@digitalmars.com
Новость: https://www.opennet.ru/opennews/art.shtml?num=37065


Содержание

Сообщения в этом обсуждении
"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено ВовкаОсиист , 31-Май-13 11:50 
Судя по исходникам, x86 онли, пока(?).

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 12:05 
на 64 работает давно

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено ВовкаОсиист , 31-Май-13 12:10 
имеется ввиду отсутствие поддержки ARM. Хотя помнится где-то видел бекенд для gcc, благодаря гцц-инфраструктуре были доступны и другие архитектуры, в т.ч. арма. Почему автор решил писать кодо-генератор с нуля - не понятно.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено inferrna , 31-Май-13 12:33 
У них ещё ldc на llvm есть.
> Почему автор решил писать кодо-генератор с нуля

наверное, он очень гордый


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 15:01 
Ответ от 28.08.2012:

GDC and LDC are both available for ARM processors on the last Debian stable.

Вот отсюда:

http://forum.dlang.org/thread/rjkfmzqvixxvbnkcmtul@foru...


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено anonim , 31-Май-13 11:57 
когда уже на нем facebook перепишут ?

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено BayaN , 31-Май-13 12:56 
О, ты тоже ненавидишь facebook.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 13:28 
И фконтактик :)

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 13:32 
Пока его ABI не станет совместимо с C++ным, не взлетит.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 14:56 
D это попытка избавить мир от C++, а не сделать что-то совместимое с ним. А C он изначально дружил.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 17:20 
Простой вопрос - а что _не_ совместимо с си? :-)

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Kodir , 31-Май-13 19:48 
Вопрос: А ЧТО ТОЛКУ от того, что всё с ним совместимо? Вам нужны DOS драйвера? OS/2 приложения? Линуксу уже как лет 15 нужен нормальный язык, а не объектноориентированное укропище типа Цэ++. Пока будет Цэ/Цэпипи, не видать FOSS стабильности как ушей.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено ананим , 31-Май-13 21:01 
Выдыхай, бобёр.
Си (и линуху в частности как одного из продуктов) хватает и стабильности, и гибкости.
На пару балмеров и пару (сотен) таких как ты хватит.

Зыж
Ха! Стабильности ему не хватает.
Что там ещё в мире то делается?


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Z , 01-Июн-13 00:36 
.NET (по простому, а не через ActiveX, DOM или другими очень обходными путями).

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено ... , 01-Июн-13 03:23 
Мимо.

http://msdn.microsoft.com/en-us/library/aa984739(v=vs.71).aspx


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 15:48 
Нет такого понятия, как "ABI C++". Спецификация С++ намеренно оставляет ABI неопределённым, в силу чего разные компиляторы для разных платформ (или разные компиляторы для одной платформы, или один и тот же компилятор для разных платформ, или даже разные версии одного и того же компилятора для одной и той же платформы) имеют несовместимые друг с другом ABI.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 18:23 
Пусть так. Ну хотябы совместимость с тем ABI, которая у современных версий g++. Qt скоро будет в каждой кофемолке.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 20:04 
>Нет такого понятия, как "ABI C++".

man itanium abi


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 20:27 
> man itanium abi

Итаник почти сдох. Кого его abi волнует?


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 20:52 
Тех, кто пишет G++, очевидно. Itanium ABI там используется не только для собственно итаниума, но и для других платформ, включая x86_64. Впрочем, универсальным от этого этот ABI не становится, да и истинность утверждения "без этого не взлетит" сомнительна — бОльшая часть "взлетевших" языков совместимости с этим ABI не имеет, включая, как ни странно, Си.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 13:39 
Напомните, это же проприетарщина, либо под какой-то кривой лицензией?

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 15:08 
Напоминаю.

DMD состоит из нескольких частей.

1) frontend - открытая лицензия (Boost License), её же используют ldc и gdc

2) бакэнд - Брайт в свое время заключил некое соглашение с Семантиком (то ли права на код продал, то ли что-то подобное), так что его возможности несколько ограничены. Код доступен на гитхабе, но для производных продуктов вы должны получить разрешение Брайта, кторое он даёт совершенно механически всем желающим. Даже патчи как-то принимает

3) стандартная библиотека лицензируется под Boost License, используется (с небольшими подпилами) в LDC и GDC.

LDC/GDC лицензионно чисты, но обычно несколько отстают от официальной версии (до месяца), над ними также работает поменьше народу. LDC также несколько ограничен технически архитектурой LLVM.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 20:07 
>LDC также несколько ограничен технически архитектурой LLVM.

А почему clang не ограничен?


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 20:29 
> А почему clang не ограничен?

Не знаю где он там не ограничен, но парни из AMD хлeбнули немало горя с LLVM, пытаясь научить этого ежа летать. Код для VLIW генерить он может только с феерическими костылями, сравнимыми по написанию с отдельным кодогенератором. Оно даже просто технически-валидный поток команд не может сгенерить - приходится парсить результат работы этого бредогенератора и фиксить за ним то что он нагенерил.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 20:53 
Честно говоря, не помню нюансов уже. Некоторые оптимизации не получалось сделать в LDC и говорили, что скорее всего и не получится.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 16:17 
а что есть интересного написанного на этом языке?

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 16:28 
На D2? Ничего. И не будет, пока эти клоуны продолжают чуть ли не в каждой версии язык корёжить. И заменой С++ это чудо в текущем виде не станет, увы. Ибо JIT, de jure отключаемый, de facto при отключении превращает всю стандартную библиотеку в тыкву.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено zunkree , 31-Май-13 17:06 
Какой JIT, Это компилируемый язык! А если ты про сборщик мусора, то да -- многие возможности стандартной библиотеки не будут работать с отключенным сборщиком.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 17:55 
Тьфу, конечно же я про GC. Сам не знаю, какого лешего про JIT написал.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 17:29 
Одна мелочь - те, кто "корёжат" язык и те, кто на нем пишет (правда в опенсорсе у них только библиотеки) - одни и те же люди. Комьюнити там небольшое, но крайне квалифицированное и активное, и изменения в языке основательно обсуждаются. Вон в нынешней версии - убрано (точнее задепрекейчено) только явное безумие, которое в здравом уме и так ни один нормальный программист не напишет.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 17:58 
Вот только есть одна проблема. С первого релиза DMD2 прошло уже шесть лет, а процесс стабилизации возможностей языка никак не завершится. И чем дольше это продолжается, тем меньше остаётся шансов на то, что язык таки получит широкое распространение.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 19:16 
Как минимум последние пару лет ничего там всерьез не ломали. Изменения есть, но обычно это довольно эзотерические углы, которые мало кого реально цепляют. Не говоря о том, что в таких случаях обеспечивается то, тчо сарый код не смысл меняет а становится невалидным и предлагаются варианты фиксов.

А что не взлетит - вполне вероятно - никакой большой которы за D нет, и компиляция в натив для сложного софта не в моде.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено JavJav , 01-Июн-13 12:52 
К сожалению это не так: до сих пор даже переносят библ. ф-ции из модуля в модуль и переименовывают

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Kodir , 31-Май-13 19:50 
> С первого релиза DMD2 прошло уже шесть лет, а процесс стабилизации возможностей языка никак не завершится.

"Тщьеорт побьери!" Все обе программы на Ди от возмущённого ононизмуса перестали работать!! Да? Или ты так, попердеть вышел?



"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 23:05 
> С первого релиза DMD2 прошло уже шесть лет, а процесс стабилизации возможностей языка никак не завершится.

От первого релиза С++ (1983 год) до его стандартизации (1998 год) прошло 16 лет. Будем ждать.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 16:36 
> а что есть интересного написанного на этом языке?

Hello, world.

PS. Фуле спрашиваешь? Напиши, йопто!


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено zunkree , 31-Май-13 17:12 
> а что есть интересного написанного на этом языке?

Много чего есть, с частью можно ознакомится тут http://www.prowiki.org/wiki4d/wiki.cgi , остальное поискать на гитхабе. Есть даже веб-фреймворк http://vibed.org/


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 17:22 
То есть как и говорилось - ничего! Ну не больно то и надо. Let's GO! ;-)

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 17:33 
Сейчас относительно D лучше говорить наоборот - сначала надо искать на гитхабе.

Ну и вот здесь лежат конфиги для автоматической сборки библиотек, по ним удобно всё скопом оценивать, благо видны и краткие описания, и даты последнего обновления репы: http://registry.vibed.org/


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено zunkree , 31-Май-13 18:04 
Спасибо большое.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 18:45 
Нет, ибо экосистема безнадёжно загублена. Нестандартностью, проприетарным компилятором, убогостью по сравнению с C++, никакой совместимостью, отсутствием advocacy.

Единственное что я видел интересного на этом языке - это openmw, свободный клон TES 3: Morrowind. Только вот его переписали на C++ после чего разработка ускорилась на порядок.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 19:12 
Простите, но после "убогости по сравнению с плюсами" говорить дальше не о чем.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 19:18 
А вы наверное из тех кто начитался хомячковых высеров о том что D круче, а сам язык не видели?

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 19:49 
Это скорее тот, кто С++ ниасилил )))

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 20:00 
Есть три вида людей: те, кто не пробовали осилить С++, те, кто пробовали и не осилили, и те, кто выучили пару идиом и говорят, что осилили.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 20:16 
Ну я как бы 3D-двиг (OpenGL >= 3.3) пишу на С++ и весьма успешно :) К какому типу вы меня отнесете - мне плевать :)

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено chinarulezzz , 31-Май-13 20:50 
стал бы ты писать что именно пишешь на С++, если на мнение плевать... :-D

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено JavJav , 01-Июн-13 12:56 
надо быть очень убогим программистом, чтобы знание С++ (в мое время ВСЕ им владели, реальная альтернатива была только Паскаль) возводить в абсолют. Но в нынешнее - Java&PHP время - знание С++, конечно удивительное качество человека...

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 21:27 
> Ну я как бы 3D-двиг (OpenGL >= 3.3) пишу на С++ и весьма успешно :) К какому типу вы меня отнесете - мне плевать :)

К тому типу, который думает, что выучил С++, а сам спецификацию с её >1000 страниц даже не видел. То есть к третьему. А если скажешь, что ты её наизусть выучил, то ты — просто лжец, и не важно, пытался ты осилить С++ или нет.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 22:03 
какой няшный батхёрд )

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 22:40 
> какой няшный батхёрд )

…сказал представитель чувствующих оный батхёрт всякий раз, когда кто-либо упоминает D или еще чем-нибудь богохульственно покушается на Пресвятые Плюсы.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 20:38 
Что характерно - ни одной внятной претензии вы не привели. И да, я D знаю достаточно хоршо, благо пару лет в их рассылке провисел, так что мне лапшу на уши можете не вешать.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 21:36 
Распинаться перед тем кто выхватывает случайную подстроку из поста и подставляет в шаблон "Простите, но после % говорить дальше не о чем"? Нет уж, спасибо - с вам говорить действительно не о чем.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Kodir , 31-Май-13 19:58 
> Нет, ибо экосистема безнадёжно загублена.

Полная пурга от мистера ононизмуса. Какая экосистема, вы о чём, ваше мимозейшество?
Ди - это прежде всего ЯЗЫК, который развивается по нормальным законам софтостроения - вводятся фичи, тестируются, принимается решение брать-не брать. Попутно развивается библиотека. Кому и в каком месте чешется Ди? Язык - превосходный, впитал в себя столько интересных вещей, на которые сипиписники ещё лет 20 облизываться будут. Казалось бы, ни у кого нет "легаси" библиотек на мегабайты Ди-кода, чё всё ноете-то? Напишете код, тогда и возмущайтесь "нестабильностью"! А то выйдут, пёрнут, "а я чо? я ничо - вы уж сами разбирайтесь!" - известный анекдот про тупого кузнеца.

У меня был написан прокси-сервер, в котором не сменилось ни строчки кода (благодаря Ди уместился в 500 строк). Мне почему-то развивающийся Ди не мешает. Хотя, может я не учёл плохих танцоров?...


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 20:12 
>который развивается по нормальным законам софтостроения - вводятся фичи, тестируются, принимается решение брать-не брать.

Нет такой вещи как "нормальные законы софтостроения". Да и между C++ и D в плане подготовки стандарта разницы нету - в C++ точно так же вводились фичи, обкатывались и лишь потом принималось решение брать их или нет. Просто там люди умеют делать это незаметно для пользователей.

>на которые сипиписники ещё лет 20 облизываться будут

Половина есть в C++11 в куда более удачной форме, оставшиеся удачные фичи из D и не только попадут в C++14 и C++17.

> Напишете код, тогда и возмущайтесь "нестабильностью"!

OpenMW уже написали. А потом переписали на плюсы и избавили себя от проблем.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 20:41 
Между разработкой плюсво и D не было разницы, кога Стауструп плюсы в Bell Labs ваял, вноя изменения по собственному опыту и пожеланиям коллег. Сейчас плюсы (которые я, кстати, воплне ценю - но понимаю их грабельность) безнадежно завязли в комитетщине, в результате которой те же концепты, например, так и не были приняты.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 21:39 
> безнадежно завязли в комитетщине

Лол, такие как вы на любые стандарты говорят "Вы что, всех хотите под одну гребенку?". Все мы уже знаем что случается с языками, которые "без комитетщины" меняются целиком по желанию левой пятки.

> в результате которой те же концепты, например, так и не были приняты.

А вы хоть удосужились почитать почему они не были приняты?


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 20:51 
Две основные фишки D - отказ от совместимости кода с сями и приличный синтаксис шаблонов - в плюсы не попадут никогда. Нормальный const - тоже. Как и compile-time code execution, alias this, унифицированный синтаксис вызова функций и т.п.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 21:44 
> Две основные фишки D - отказ от совместимости кода с сями

Да, удачи. Пусть от любой совместимости откажутся, а то что-то в вами же указанной репе с безумными легионами D'шных пакетов (http://registry.vibed.org/) почти все - обёртки над библиотеками на пормальных языках.

> и приличный синтаксис шаблонов...
> Нормальный const

Вот, теперь пошли шаблоны "в D нормальный %s". И не скажешь что не аргументированно :)


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 01-Июн-13 00:31 
Ну да, повнимательнее посмотреть вам было лень. Там вообще-то оберток меньше половины, а те, что есть - к большим штукам вроде OpenSSL, баз данных, LLVM.

Ну и если вам const, который ничего не гарантирует - нормален, можете продолжать пользоваться плюсовым.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 21:12 
> Какая экосистема, вы о чём, ваше мимозейшество?

Слова коверкать перестань, глупо выглядишь. А экосистема действительно никакая. Нет её, экосистемы-то. Ибо никто понять не может, в какую нишу этот D метит. На сайте очень много сравнений с С++. А вот хрен, не замена он для С++ ни разу. Для той ниши, где С++ до сих пор силён и не собирается сдавать позиции (игры, например), сборщик мусора неприемлем. А в D он в реальности неотключаемый (никто в здравом уме не будет с нуля переписывать всю стандартную библиотеку D). В enterprise сегменте Java во все поля, с тучей уже написанных библиотек на все случаи жизни, ещё и языков для JVM платформы куча, тут тоже D не ждут. Embedded с С слезать не собирается, местами ещё и ASM встречается. В web своих языков охапка, у D по сравнению с ними вообще killer features не видно. Мобилки/планшеты? И тут пролетаем.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 31-Май-13 21:34 
Ну вот David Simsha его с успехом применяет для исследований в области генетики - датасеты у него громадные, и джавы всякие с их дикими накладными расзодами на объект неудобны. С другой стороны - у плюсов большие проблемы с приличными абстракциями и высокоуровневыми описаниями. А D  в самый раз подошел.

Если коротко - то D хорош там, где, одной стороны, нужен приличный высокоуровневый язык, с другой - задолбали родовые проблемы динамики и отсутствия типизации у скриптовых. Веб тоже под это дело подходит, кстати - то, что там традиции другие - вопрос отдельный. Там, вон, PHP выкинуть никак не могут.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 21:46 
> Ну вот David Simsha его с успехом применяет для исследований в области
> генетики

Да-да, не забуду тот феерически пост когда кто-то ему показал как то же делается на C++ - в 2 раза меньше кода, код гораздо понятнее и работает быстрее в полтора раза.


"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 31-Май-13 22:53 
Можно ссыль? Очень интересно.

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Crazy Alex , 01-Июн-13 00:32 
Ссылочку можно?

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено JavJav , 01-Июн-13 13:03 
Не представляю что можно написать на С++ коротко, а на D нельзя. Что есть в С++, чего нет в D?

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено Аноним , 01-Июн-13 22:40 
вот для web D сейчас в основном и применяется. Все больше компаний подсчитывает, сколько лишних ресурсов потребляется их любимыми рорами и джангами, ужасается, и переходит - кто на node.js, кто на go, кто на vibe.d :)

"Вышла новая версия dmd 2.063, компилятора для языка D"
Отправлено анонимн , 03-Июн-13 09:05 
Скрипты на D: http://dlang.org/rdmd.html

D хорош скоростью компилирования.

(Помню некоторое разочарование, когда начал писать на C++ под i286/i386. Сливал подчистую Pascal - Pascal компилируется практически мгновенно)

D вполне заменяет PHP, Python, Java, C#, bash & etc и дополняет C++