Как-то на хабре обошли стороной это событие, хочется восполнить этот пробел.
Проходила конференция 4-6 мая в Берлине, спонсором выступала компания Sociomantic.
Тут я вкрадце расскажу о чём были выступления.
День 1
Андрей Александреску
Рассказал что сделанно за год, но основной акцент на моделях управления памятью: использование в D reference-counting.
Стоит отметить модуль
std.experimental.allocator
, который предоставляет разные способы выделения памяти (gc, malloc, freelist и тд) и общий интерфейс для работы с ними, например в AffixAllocator
(будучи обёрткой поверх любого другого allocator) реализует RC.Так же, озвучил интересную идею: автоматическое определение сложности функций в «Большое О» нотации (результирующая информация должна быть частью документации и должна быть доступна при рефлекции времени компиляции).
Презентация веб и pdf.
Ali Cehreli
Автор книги Programming in D, член правления D Language Foundation.
Мультизадачность, ассинхронный ввод/вывод, синхронизации, потоки, зелёные потоки (fibers) и тд. Затронуты вопросы реализации на уровне CPU и OS (MMU, TLS). Достаточно интересно.
Презентация pdf.
Luis Marques
Реализовал идеи Дэвида Парнаса о том как разбивать сложные программы на модули на языке D.
Презентация pdf.
Ethan Watson
Старший программист Remedy Entertainment.
Использование языка D при разработке Quantum Break — AAA игры для XBox
Презентация pptx.
К слову, это не первое (но первое такого уровня) использование D для gamedev — open-source движок Dash
Kai Nacke
Разработчик LDC.
О LDC и портировании druntime и phobos для работы с ним.
Презентация pdf.
Не так давно вышел LDC 1.0.0 с dmd 2.070.2 как frontend.
Steve Schveighoffer
Активный разработчик druntime, phobos.
Доступно о, наверное, самом загадочном модификаторе
inout
(который он сам и придумал).Презентация pdf.
День 2
Walter Bright
Создатель языка рассказывал основные моменты о едином frontend для всех компиляторов: dmd, ldc2, gdc.
Будет интересно тем, кто хочет помочь делом, но, пока, не знает с чего начать.
Презентация pdf.
Don Clugston
Главный программный инженер в Sociomantic Labs.
Очень большая презентация на тему чисел с плавающей точкой в D.
Презентация pdf.
Liran Zvibel
Соучредитель и технический директор в Weka.IO.
Рассказал о своём проекте и некоторых аспектах использования D в высоконагруженных проектах.
Презентация веб и pdf.
Benjamin Thaut
Предприниматель, разработчик ezEngine.
Использование D для написания разделяемых библиотек.
Презентация pdf.
Robert Schadek
О vibe.d, typescript и ассинхронных одностраничных приложениях.
Презентация веб и pdf.
Amaury Sechet
Программист в Fackbook, разработчик LLVM, создатель SDC.
О битовых полях и работе с ними. Вопрос рассмотрен под интересным углом и приводит к теме полиморфизма структур.
Презентация веб и pptx.
День 3
Leandro Lucarella
Программист в Sociomantic.
Рассказал об истории развития языка D и об использовании D в sociomantic в точном хронологическом порядке, а так же о пранах на будущее.
Презентация веб и pdf.
Vladimir Panteleev
Активный участник D сообщества, разработчик verysleepy, так же известный под ником thecybershadow.
Рассказал о мелких «тайнах» языка. Достаточно познавательно, но очень мало объяснений в самой презентации, в основном только примеры кода (кому-то может это даже больше нравится).
Презентация веб.
Martin Nowak
Один из основных разработчиков runtime и компилятора, backend разработчик в Mobisol.
О базах данны (как классических так и NoSQL) и библиотеках, предоставляющих высокоуровневый интерфейс работы с ними.
Презентация веб (у меня не открывается).
Erik Smith
Аналитик в Transcend Insights, разработчик баз данных.
Двигает идею включения в стандартную библиотеку интерфейса работы с базами данных.
Презентация веб и pdf.
John Colvin
Основатель DlangScienes, активный участник сообщества.
Поднял вопрос использования гетерогенных вычислений OpenCL и оборачивания С API в удобные D классы и структуры.
Презентация веб и pdf.
Mithun Hunsur
Разработчик druntime и phobos.
Эксперименты в области разработки CPU.
Презентация веб и pdf.
Итого
Продолжается тренд альтернативных моделей управления памятью (RC) и большие игроки поддерживают это.
Это была первая конференция проведённая в европе. Центральной личностью, конечно, стал Александреску.
Из первых рук о результатах и впечатлениях в блоге sociomantic.
Запись видео первая часть, остальное там же во вкладке видео (спасибо mrPunk).
Комментарии (14)
vintage
21.06.2016 10:12Меня тут мысль посетила, а что если сделать транслятор тайпскрипта в ди и реализовать апи совместимый с нодой.
vovanbo
21.06.2016 10:37А с какой целью? Что это даст в перспективе?
vintage
21.06.2016 14:22Ускорение. Сейчас TS компилится в JS, который исполняется в V8. А будет компилироваться в бинарник. Это популяризирует TS среди JS разработчиков, позволит писать расширения для платформы напрямую на D и соответственно популяризирует и сам D.
bfDeveloper
21.06.2016 15:20С тем количеством динамики, которое заложено в JS и, соответственно, в TS, получится медленнее, чем V8. Не вижу потенциала для ускорения. V8 и так компилит всё, что возможно. Можно попробовать с потерей динамики, то есть в рамках абстракций TS, но не уверен, что это будет достаточно понятно, гибко и быстро.
Вот возможность писать плагины к ноде на D не помешала бы. Это и сейчас возможно, просто не удобно, много рутины на стыке C++ и D.vintage
21.06.2016 19:43Тайпскрипт всё же предполагает уменьшение динамики. В8 приходится угадывать где динамика, а где её нет. Иногда ошибается. Тут же у нас точно будет известно, где динамика с соответствующей потерей скорости, а где статика без каких либо потерь на проверки, перекомпиляцию и тп. Кроме того, такие вещи как волокна и потоки будут очень кстати.
mezastel
Одна вещь, которая меня всегда беспокоила в D, это то что вместо C#/Java-образного, понятного синтаксиса для стандартной библиотеки, который был в Tango, основным интерфейсом стал C/C++ образный Phobos, который намного сложнее использовать.
И еще, автор, советую вам грамотно прописывать тэги, т.к. сейчас статья не находится ни по dlang ни по dconf :(
deviator
Боюсь спросить где вы пытаетесь исать…
dlang
dconf
bfDeveloper
Меня тоже вначале удивляло процедурно-функциональное API. Но если понять и принять идею, то фобос очень удобен. Особенно это касается диапазонов (ranges), которые однозначно лучше всего, что я видел в других языках. Может быть поначалу и непонятно, зато отличное соотношение удобство/производительность.