LINUX.ORG.RU

Язык программирования D одобрен для принятия в GCC

 ,


0

10

Дэвид Эделсон (David Edelsohn), руководитель группы оптимизации GCC в IBM Research, объявил об одобрении включения рантайма и фронтенда для языка программирования D в состав GCC. Ментейнером назначен Ян Буклав (Iain Buclaw), основной разработчик GDC, работающий в Sociomantic Labs.

GDC — это реализация компилятора языка D под лицензией GPL, использующая бэкенд GCC. Проект был основан Давидом Фридманом (David Friedman) в 2004 году. Сейчас разработкой руководит Ян Буклав, присоединившийся к проекту в 2009 году.

Какая версия GCC получит поддержку D, пока неизвестно.

>>> Сайт проекта GDC

>>> Сообщение в рассылке GCC

★★★

Проверено: leave ()
Последнее исправление: sudopacman (всего исправлений: 4)
Ответ на: комментарий от RazrFalcon

количество пакетов на crates.io перевалило за 10К

на пхп тоже полно либ. Энтузиазм растопинатилей перенаправить бы на тот же перл 6 к примеру, вывели бы его на уровень питона даже не запыхавшись.

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

И это, надо было делать раст исходя из сишарпа с теми же интерфейсами/классами/дженериками, добавляя уже к ним всю типобезопасность.

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

количество пакетов на crates.io перевалило за 10К

Показатель не количество, а качество, сложность и поддержка. Куча любительских заготовок ни на что не влияет.

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

Теперь те, кто не боится трудностей, просто берут и используют D без шума на весь Интернет.

Боюсь, это как раз тот случай, когда от шума на весь интернет была бы некоторая польза. А то некоторые дезинформированные считают, что язык мёртв, другие про него просто не слышали, а ещё есть люди, которые оценивают ЯП по количеству проектов на гитхабе. Третья категория это клиника, конечно, а вот первым двум ещё можно было бы помочь...

Я бы например хотел увидеть хороший общедоступный мануал по языку и его библиотеке в современном состоянии, и желательно не только на английском...

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

Тем не менее, от паскаля в D тоже кое что есть. А именно - оператор with.

Это хорошо, молодцы. Хотя я за несколько лет писания на крестах приучил себя обвешивать структуры и классы методами настолько мелко, что отсутствие with становится почти незаметным. Но в некоторых ситуациях это оверхед.

Ещё из Паскаля скучаю по локальным процедурам. В С++11 появились лямбды, но это не совсем полный аналог. Где-то они выглядят изящнее локалек, где-то наоборот.

Ещё в крестах выбешивает полное отсутствие модульности. Хорошо, что в D она из коробки.

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

Боюсь, это как раз тот случай, когда от шума на весь интернет была бы некоторая польза.

У D этот шум уже был. Нельзя войти в одну и ту же воду дважды.

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

Про swift хз - у них пока нету нормального репозитория.

Его репозиторием можно считать подмножество гитхаба. Тем более версии пакетов берутся из git тагов, следовательно репозиторий свифта изначально задумывался быть организованным на базе git сервера.

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

Тем временем у D, о котором тут речь, даже 1К нету.

Смотря как считать, условных 10К поделок на нем скорее всего найти не проблема. А так, да, D мертв, и с этим глупо спорить.

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

Вот зачем? Кому нафиг это говнище нужно?

Это ты про линукс?

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

При чём тут гитхаб? cargo умеет работать вообще с чем угодно.

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

Я тогда на волне хайпа посмотрел и забил. Два компилятора, две стандартных библиотеки, что-то там ещё и сверху костылями обставлено.

Не, идея мне нравилась, а вот реализация не очень. В итоге последний раз пускал D когда у каких-то клиентов зачесалось свой софт у нас на железяках запустить. К чести D, стоило скомпилировать статически и всё заработало без броблем.

Dark_SavanT ★★★★★
()
Последнее исправление: Dark_SavanT (всего исправлений: 1)
Ответ на: комментарий от Dark_SavanT

Два компилятора, две стандартных библиотеки, что-то там ещё и сверху костылями обкатано.

Ну сейчас, по слухам, все гораздо лучше. И библиотека всего одна, и язык не меняется каждые две недели.

Правда, время упущено. Кто тогда искал себе замену для C++ и Java с C#, от D отвернулись. А сейчас кому не нравится C++ имеют выбор между Rust (сложно, но без GC) и Go (просто, но с GC). Имхо, у тех, кто хочет уйти в нейтив с других управляемых языков, такой же выбор. Сложный D, пусть быстрый и с GC, мало кому нужен, тем более, после стольких лет безрадужного существования.

Но те, кого сложности не смущают, вроде как современным D более-менее довольны.

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

Третья категория это клиника, конечно

Почему? Конечно, нужно делать разные поправки, особенно если язык специфический, но вообще это вполне неплохой показатель. Хотя и не именно «качества» языка.

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

Язык, на котором никто не пишет, это не показатель?

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

Тем, что D даже в свои лучшие времена не показывало результатов Rust.

Времена были сильно разные. В 2006-2007 замену тому же C++ видели не в другом нативном языке, а в Java/Scala, C#, Haskell. Память не ресурс, производительность CPU будет расти постоянно и т.д., и т.п. Тогда люди на полном серьезе говорили, что их не беспокоит производительность Ruby и Ruby-On-Rails: мол, мы просто добавляем еще сотню серверов и все нас устраивает.

Должно было пройти время, чтобы таки пришло понимание, что free lunch is over.

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

Ну это как раз одна из причин, почему D не смог отвлечь на себя достаточное количество C++ников: пока ждали появления D2, C++ прошел путь до C++14.

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

Но теперь, прочитав книгу по Rust, мне уже кажется, что абстрактная машина Си++ и не такой уж «универсальный переносимый ассемблер». Rust мне очень понравился

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

что абстрактная машина Си++ и не такой уж «универсальный переносимый ассемблер»

Сдается мне, что вы путаете C и C++, про «универсальный переносимый процессор» — это касательно C, в основном, говорят.

eao197 ★★★★★
()

Я думал он в гцц давно...
Однако...

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

Когда знания всего этого зоопарка будут требовать с джуниора (да и сейчас уже от джуниора хотят full stack), думаю, не так все радужно и нормально будет видеться.

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

Конечно нельзя. Но срок жизни небиологических объектов может исчисляться миллионами лет, вплоть до конца вселенной, если он вообще будет.

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

Зоопарк дистрибьютивов, зоопарк языков, зоопарк фреймворков... Что дальше?

Возрастание энтропии. Так что препэр уранус! :)

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

umren, вы спрашивали, кто для каких проектов D использует. Я использую для проекта со ссылкой из профиля.

unDEFER ★★★★★
()

Новость однозначно позитивная. Включение в gcc означает доступность во всех основных дистрибутивах и более жёсткий контроль качества и своевременности. И это хороший информационный повод и аргумент писань на нём. Нсли тебе говорят: «Что это за хрень?», то посылаешь в gcc.

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

увы свифт никто за пределами экосистеме яблока не использует и не будет

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

Вот зачем?

Чтобы такой дегенерат как ты пришёл и поныл здесь.

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

Вот это ты обосрался так обосрался.

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

В gdc есть существенные проблемы с соблюдением стандарта языка. Код, который корректно собирался dmd 2.052 (быть может и на более ранних версиях, но я не проверял), на gdc 4.8 собирается далеко не всегда, хотя заявлена совместимость с 2.063.

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

Я бы например хотел увидеть хороший общедоступный мануал по языку и его библиотеке в современном состоянии, и желательно не только на английском...

От кстати, да. Пишу книгу по D, скорее, для себя. Если будет интерес, можно попробовать интенсифицировать этот процесс и попытаться издать.

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

Тем не менее, от паскаля в D тоже кое что есть. А именно - оператор with.

Это хорошо, молодцы.

жаль, что не питоновский with

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

Было бы здорово. Не планируете публиковать черновики глав?

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

Новые версии стали выходить недавно. Во всех стабильных дистрибутивах пока только 4.8 или 4.9. И, кстати, это не отменяет того, что в предыдущих версиях (а 4.8-4.9 были стабильны в течении нескольких лет) были ошибки по сравнению с референсным компилятором, которые препятствовали компиляции правомочного кода или приводили к ошибкам памяти при его исполнении. Кстати, какую версию поддерживает 7.1?

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

Разве питоновский with не для того чтобы исключения обработать или финализатор выполнить? В ди же для этого есть scope. scope(exit) там, scope(failure)/scope(success).

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

GDC сильно отстает, обычно на полгода или даже больше, от референсного компилятора. GDC соответствует DMD 2.068.2 Для сравнения, LDC (llvm-based): 2.073.2 Текущая версия референсного компилятора - DMD: 2.074.1

Может быть, включение в состав GCC активизирует разработку.

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

Пакетов в crate.io в 10 раз больше, чем в DUB. Но, например, не нормальной нативной кросс-платформенной GUI библиотеки.

Вот на D - есть DlangUI (я пилю).

https://github.com/buggins/dlangui

Одна и та же программа может работать на Win, Linux, OSX, Android.

Даже есть режим работы в консоли.

Например, DlangIDE - IDE для D

GUI: http://buggins.github.io/dlangui/screenshots/screenshot-dlangide.png

консоль: https://i2.wp.com/dlang.org/blog/wp-content/uploads/2016/10/dlangide.png?resi...

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