LINUX.ORG.RU

Создание D foundation, организации, которая будет заниматься развитием языка

 


0

5

Сегодня Андрей Александреску, один из соавторов языка D, довольно известный также в мире С++, сделал неожиданное заявление — он уходит из Facebook, где работал последние пять лет, чтобы вплотную заняться развитием языка D. Он также заявил о начале процесса по созданию D foundation — “организации D” или “фонда D”, организации, которая будет заниматься развитием и продвижением языка. Он также заявил, что доходы от продаж его книг будут идти в бюджет вновь созданной организации.

Анонс на официальном форуме - http://forum.dlang.org/post/xsqrdgwnzehdmfmvcznn@forum.dlang.org

Будущее языка будет лучезарным. D'scuss?



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

Сообществом

Ахахахахах

стандартизацией

Серьёзно? И даже export везде был? Про отдельные «особенности» некоторых реализаций STL я промолчу.

развитием

В 2015 до сих пор надо с памятью руками работать.

стабильностью

bash: segmentation fault. Алсо http://trevorjim.com/lets-sunset-c-c /

библиотеками

См. сообщество и стандартизацию

рынком труда

Тут C++ просасывает как минимум жабе.

переносимостью

Нет, это уже не смешно.

TL;DR C++ давно надо закопать, но D - дерьмовая замена.

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

Вообще-то с D и было сравнение.

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

Ахахахахах

Что смешного?

Серьёзно?

Вполне.

В 2015 до сих пор надо с памятью руками работать.

Руками не надо, есть RAII и подсчет ссылок. Отсутствие(опциональность) сборщика мусора является одной из ключевых фич C++.

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

Тут C++ просасывает как минимум жабе.

А кто тут говорил о жабе?

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

Нет, это уже не смешно.

А чего тут может быть смешного?

C++ давно надо закопать, но D - дерьмовая замена.

...

C++ давно надо закопать, но С - дерьмовая замена.

C++ давно надо закопать, но Java - дерьмовая замена.

C++ давно надо закопать, но Go - дерьмовая замена.

C++ давно надо закопать, но Rust - дерьмовая замена.

...

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

есть RAII и подсчет ссылок

Это убогие костыли, и нормальный GC ими не заменишь.

Отсутствие(опциональность) сборщика мусора является одной из ключевых фич C++.

Это не фича. Просто GC нормально хрен приделаешь когда у тебя указатели присунуты в язык по самые гланды и без них шагу ступить нельзя.

Причем тут рукожопость отдельных разработчиков пока не ясно.

Если у гугла рукожопые разработчики (см. статистику багов в хроме), то где чёрт возьми они вообще нормальные?

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

C++ давно надо закопать, но С - дерьмовая замена.

C ещё хуже C++ и не может быть ему заменой.

C++ давно надо закопать, но Java - дерьмовая замена.

Java отлично заменила C++ в энтерпрайзном софте. Сравни треш и угар середины 90х и сейчас.

C++ давно надо закопать, но Go - дерьмовая замена.

Go - просто дерьмовая поделка, зачем ты про него вспомнил?

C++ давно надо закопать, но Rust - дерьмовая замена.

Rust кстати отлично заменяет C++.

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

Это убогие костыли, и нормальный GC ими не заменишь.

Ровно наоборот, убогий GC не может иметь такие же качества и потому позорно выкинут на помойку, например, в Apple и в новых языках Swift и Rust.

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

TL;DR C++ давно надо закопать, но D - дерьмовая замена.

хз. вот OpenMorrowind например, переписали с D на C++. и что? разумное ли это решение?

с одной стороны, скорость разработки: сначала понизилась и стала меньше, чем было на D. но подключились новые люди. правда потом в ChangeLog стало много записей типа «исправили переполнение буфера и другие типичные детские проблемы с++». которые бы вообще не возникали на D, да.

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

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

с точки зрения «универсального ЯП» А. Столярова — ИМХО, вполне адекватная. если допилить нужные плагины к компилятору и макросы, ога.

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

Тех, кто принимает решения о выборе языка для очередного коммерческого проекта, очень мало волнует точка зрения какого-то там штолярова

Их волнует стоимость проекта, time to market, и возможность нанять достаточное количество владеющих языком кодеров. Где-то в этой плоскости Rust-у и предстоит бороться с С++, с Питоном, и с прочими уже доказавшими свою состоятельность языками.

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

которые бы вообще не возникали на D, да

Откровенное вранье.

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

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

Кого волнует мнение ущербных мозгом?

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

убогий GC не может иметь такие же качества

А вот если бы ты ещё пруф этого привёл, было бы вообще замечательно. Rust не имеет GC потому что разработчики считают, что время жизни объектов можно предсказать во время компиляции через статический анализ, из-за чего в языке появились конструкции типа заимствования и т.д. В случае со Swift всё ещё проще: legacy в виде ObjC.

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

стоимость проекта, time to market, и возможность нанять достаточное количество владеющих языком кодеров

Ни один язык не имел таких показателей изначально. Когда Java появилась, C++ уже имел и кучу батареек, и кадров, и тулчейн и т.д. И D уже имел бы, если бы не история с D1/D2.

Можно понять тех, кто сейчас лопатой размахивает, как бы язык формально с 2001 года существует. Но в 2007 был очень конкретный полом обратной совместимости и куча перспективных проектов просто умерла. Тем не менее, сейчас все достаточно стабильно и «катастроф» не предвидится, поэтому все же хочется быть оптимистом. В конце концов, если бы не ломалась обратная совместимость, D как язык был бы сейчас хуже (хотя экосистема была бы лучше).

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

Ни один язык не имел таких показателей изначально.

Тем не менее, при принятии решений именно эти показатели рассматриваются. Я могу придти к менеджменту и заявить, что новый проект нам нужно писать на ${NEW_FUNNY_LANG} потому что по сравнению с теми языками, которые мы сейчас используем, у нового языка есть ${LIST_OF_KILLER_FEATURES}. Так вот, если смена языка приведет к увеличению стоимости/сроков/кадровым_трудностям, то для менеджмента это будет шоу-стоппер, и никакие гиковские рюшечки оправданием этому быть не могут. Да я и сам не рискну идти и выступать с инициативой перехода до тех пор, пока у меня нет уверенности, что с новым языком не возникнет каких-то труднопреодолимых проблем после того, как мы вбахаем в код на нём несколько человеколет. Подобные инициативы — это большая ответственность, на самом деле.

Когда Java появилась

Java с самого начала обещала снижение стоимости. «Java's write-once-run-everywhere capability»

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

Все так, но тем не менее новые языки периодически появляются и в некоторых случаях вытесняют старые, несмотря на экономические показатели. Где сейчас какой-нибудь Кобол?

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

I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones.

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

Ну, тот же Rust обещает повысить надежность кода и тем самым сократить количество багов, что в свою очередь должно хорошо сказаться на совокупной продолжительности разработки-тестирования. Кроме того, более надежный софт, при прочих равных, повысит удовлетворенность покупателей. Это selling points, с которыми нужно идти к начальству после того, как Rust вырастет из подгузников и Servo станет самым лучшим броузерным движком в мире и будет работать на личном компьютере директора.

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

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

На голом «just a hobby» далеко не уедешь. Особенно, с такими громоздкими языками, как c/c++/d и компания.

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

На голом «just a hobby» далеко не уедешь.

Огромная часть опенсорса это «just a hobby», и еще больше было таковым в прошлом. Кроме того, у D есть некоторое коммерческое использование, не уровня монстров типа MS и Google, но вполне себе энтерпрайз.

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

Продуктивность программиста

Есть серьезные сравнения продуктивности D vs C++/boost? Или это твои субъективные впечатления?

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

как бы язык формально с 2001 года существует.

Не очень понятно, что вы вкладываете в «формально существует». А история языка D от Вальтера Брайта идет с 1999-го года. В 2001-ом он начал публичные релизы и инфу о языке в публичный доступ выкладывать.

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

В 2015 до сих пор надо с памятью руками работать.

Ну положим, не «надо», а «можно». И ничего, что тот же раст тоже про память думать заставляет? А язык-то новый.

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

Там нет указателей, вставленных по самые гланды и торчащих изо всех щелей.

Да ладно? Конечно, кое-что для ГЦ они сделали, посмотрим насколько это реально поможет.

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

Это убогие костыли

Это не костыли. Это единственный известный способ получить детерминированное удаление объектов/освобождения ресурсов, без ручной работы.

и нормальный GC ими не заменишь.

Так это и не замена GC.

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

Это не фича

Это фича. И она позволяет в том числе делать RAII, который невозможен в языках с GC. Что приводит к страшным костылям в виде finally, или к неочень страшным в виде with/using/defer.

Просто GC нормально хрен приделаешь когда у тебя указатели присунуты в язык по самые гланды и без них шагу ступить нельзя.

Можно сделать и номормальный GC с определенными ограничениями на использования типов указателей. Уже есть консервативный GC для C/C++. Можно сделать лучше. Просто смысла особого нет. Если нужен GC, проще взять другой язык.

Если у гугла рукожопые разработчики

Скорее да, чем нет. Вернее, как и везде, там есть нормальные, а есть рукожопые.

то где чёрт возьми они вообще нормальные?

Во многих местах понемногу=)

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

Java отлично заменила C++ в энтерпрайзном софте.

Я бы не сказал, что это была замена. Это был качественно новый уровень. И дело тут не в C++. А в отличной приспособленности Java к рукожопым разработчикам, что до сих пор позволяет создавать и писать на Java достаточно сложные штуки достаточно большими коллективами, с возможностью достаточно спокойно менять людей. Идеальный язык, если не со стороны разработчика смотреть.

Сравни треш и угар середины 90х и сейчас.

В России я наблюдал Delphi, в основном. И проекты на C++, как правило, отличались лучшим качеством. Хотя казалось бы.

Rust кстати отлично заменяет C++.

Где?

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

Это ещё предстоит выяснить.

Выясняйте. Пока она дерьмовая. Хотя бы потому, что не позволит так же просто и постепенно перейти на Rust в моих проектах. В отличие от C++, который позволял таки вполне плавный переход с Си.

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

Хотя бы потому, что не позволит так же просто и постепенно перейти на Rust в моих проектах.

Модель перехода на Rust, наверное, должна быть такая же, как модель перехода на Python.

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

Тупо «нормальная замена» и все? Ни доводов, ни аргументации?

Я вижу минус в питонообразном синтаксисе и «логике отступами». Вкусовщина, конечно.

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

Как-то глупо приводить доводы, я на ниме пару хелловорлдов написал. Интересно мнение человека который и его и д попробовал.

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

Вот и замена C++... Как же я пересяду на rust в своём крестовом проекте? Как же я начну новый, если хочу использовать свой и чужой(библиотечный) код на крестах?

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

чужой(библиотечный) код на крестах

Через биндинги

Как же я пересяду на rust в своём крестовом проекте?

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

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

Так он уже не нужен, чего его выбирать.

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

В 2015 до сих пор надо с памятью руками работать.
bash: segmentation fault.

программисты на жабе не могут писать программы по человечески, это всем известно.

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

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

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

не могут писать программы по человечески

Этот универсальный аргумент сишников и плюсовиков. Но что самое характерное, никто за полвека существования этих языков «по человечески» писать так и не научился.

quantum-troll ★★★★★
()
Ответ на: комментарий от ckotinko

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

А где можно почитать про эту драму?

annulen ★★★★★
()
Ответ на: комментарий от quantum-troll

Этот универсальный аргумент сишников и плюсовиков.

Не стоит обобщать. многие сишники и плюсовики прекрасно понимают минусы своих языков и плюсы чужих.

Но что самое характерное, никто за полвека существования этих языков «по человечески» писать так и не научился.

(картинка Линуса с пальцем)

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

программисты на жабе не могут писать программы по человечески, это всем известно.

Это же ты работал над проприетарным драйвером AMD? Из-за которого иксы сегфолтятся. Программисты на жабе не могут, конечно.

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

Программисты на жабе не могут, конечно.

Ты еще скажи, что файлы hs_err_pid в жизни не видел. Кроме того Java-программа, которая на старте выматерилась на два экрана и сдохла, ничем не лучше С-программы, которая на старте же выпадет в coredump. И тот и другой вариант неюзабелен.

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

А чья? У меня много раз появлялось желание оторвать яйца писавшему иксовую часть fglrx, пушо судя по стектрейсу сегфолты зачастую идут именно оттуда.

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