LINUX.ORG.RU

D


35

2

Всего сообщений: 45

Вышла новая версия языка программирования D (2.091.0)

 ,

Группа Разработка

Изменения в компиляторе:

  • Окончательно убран деаллокатор классов.
  • Возможность сообщать о номерах строк в стиле GNU.
  • Добавлена экспериментальная генерация заголовочников C++ из внешних (extern) объявлений C|C++: DMD теперь умеет писать заголовочные файлы C++, содержащие биндинги на объявления в существующих файлах D, помеченных как extern(C) или extern(C++).

Изменения в рантайме:

  • Добавлен пропущенный в некоторых местах pthread_attr_destroy.
  • Расширенные биндинги в core.sys.windows.security.
  • Добавлен core.stdcpp.memory.unique_ptr.
  • Добавлен TFD_TIMER_CANCEL_ON_SET.

Изменения в библиотеке:

  • std.bigint теперь @safe.
  • Замена approxEqual на isClose в std.math.
  • Удалён устаревший std.format.Mangle.
  • Удалены устаревшие структуры ByLine, ByChunk, ByRecord из std.stdio.
  • std.algorithm.sorting.schwartzSort теперь поддерживает и бинарные функции трансформации.
  • Добавлена curry в std.functional.

Изменения в инсталляторе:

  • Скрипт инсталляции теперь может исполняться на Windows.

Изменения в Dub:

  • Добавлена переменная окружения SOURCE_FILES.
  • У DUB теперь стиль дополнения zsh.

>>> Подробности (dlang.org)

next_time
()

Язык D включен в коллекцию компиляторов GNU (gcc 9)

 

Группа Разработка

GCC 9.1 будет первым стабильным релизом с поддержкой GDC.

Его выход ожидается приблизительно в конце первого квартала 2019 г.

Код для поддержки GDC включает библиотеку libphobos (D run-time library) и фреймворк для тестов D2.

Поддержка D потребовала внесения изменений в приблизительно 1 миллион строк кода.

>>> Подробности (phoronix.com)

Bobby_
()

Вышла DlangIDE 0.8

 , ,

Группа Разработка

Вышел новый релиз кроссплатформенной IDE DLangIDE. DlangIDE основана на графическом тулките dlangui, который к настоящему моменту позволяет создавать достаточно сложные графические приложения.

В новом релизе DlangIDE исправлено более 50 ошибок и завершена интеграция с DCD обеспечивающего автодополнение кода. В следующих версиях планируется интеграция инструментов для проверки кода в режиме реального времени таких как DScanner.

>>> Подробности (github.com)

Xroft
()

Релиз D 2.076.0

 ,

Группа Разработка

Команда разработчиков D с великим удовольствием объявляет о выходе новой стабильной версии DMD: 2.076.0

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

( читать дальше... )

>>> Подробности (dlang.org)

umren
()

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

 ,

Группа Open Source

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

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

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

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

>>> Сообщение в рассылке GCC (gnu.org)

Weres
()

Вышла первая версия аналога OpenCV — DCV 0.1

 , dcv,

Группа Open Source

Состоялся релиз первой версии компьютерного зрения DCV. DCV является аналогом OpenCV, написанным на языке D. В отличие от OpenCV, DCV — крайне компактная и простая библиотека. В настоящий момент исходные коды системы занимают всего 1 MB, однако, несмотря на свои крайне компактные размеры, DCV поддерживает не только работу со статическими изображениями, но и захват видео.

Настоящая версия DCV фактически является фреймворком для построения систем компьютерного зрения и позволяет легко внедрять в себя новый функционал.

DCV базируется на крайне удобной библиотеке работы с многомерными массивами — ndslice, которая является более функциональным аналогом Numpy из Python.

С примерами работы системы можно ознакомиться в официальном репозитории проекта.

>>> Подробности (github.com)

Xroft
()

dub 1.0

 , dub

Группа Open Source

Состоялся релиз dub 1.0 — пакетного менеджера и системы сборки для языка программирования D.

Основные изменения:

  • реализована поддержка однофайловых пакетов, включая поддержку скриптов с #!;
  • компилятор DMD в официальных сборках обновлен до 2.071.0;
  • удалены все устаревшие возможности из API, интерфейса командной строки и форматов данных;
  • теперь для использования на OS X необходима версия ОС 10.7 или выше;
  • dub переведен на использование std.stdio вместо std.stream;
  • исправлено множество ошибок.

>>> Подробности (github.com)

cetjs2
()

Вышел компилятор языка D LDC 1.0

 ,

Группа Open Source

Данное событие является очень важным в расширении применения языка D. Благодаря компилятору LDC у D теперь появилась полная поддержка архитектуры ARM и практически полная поддержка разработки под Android (включая графические приложения на базе dlangui). Также LDC поддерживает линковку с Objective-C-кодом. На данный момент доступны готовые сборки как под Windows, так и под Linux.

Следует отметить, что LDC основан на LLVM и позволяет генерировать хорошо оптимизированный код, значительно более оптимизированный, чем при использовании референсного компилятора dmd. Данная версия LDC базируется на LLVM 3.8.0.

>>> Подробности (dlang.org)

Xroft
()

Вышла первая версия компилятора D, написанная на D

 

Группа Open Source

Сегодня состоялся очень важный релиз компилятора языка D — DMD 2.069.0. До настоящего момента компилятор D был написан на С++, однако новая версия теперь написана на самом D. Процесс конвертации исходного кода с С++ на D занял значительный промежуток времени, однако позволил многократно упростить поддержку компилятора.

Значительным улучшениям подверглась стандартная библиотека Phobos. Теперь ещё больше функций в ней были рэнджефицированы (ranges — концепция, позволяющая упростить доступ и переборку элементов структур и классов).

DMD теперь поддерживает формат mscoff, используемый в библиотеках VS2015.

Активно ведутся работы над поддержкой мобильных платформ. В настоящий момент сообщается, что рантайм языка и библиотека Phobos проходят практически все тесты на устройствах Android. О полноценной поддержке разработки под iOS пока говорить нельзя, однако благодаря усилиям проекта LDC-iphone несложные приложения на D под iOS писать можно уже сегодня.

Для пользователей Linux выложена первая пробная версия компилятора Calypso, позволяющая в D использовать практически все существующие С++-библиотеки, даже такие большие и сложные, как Qt5 и Ogre3D.

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

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

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

Новая версия сервера DCD, реализующая автодополнения исходного кода, также готова к использованию с новой версией DMD.

>>> Подробности (dlang.org)

Xroft
()

Парсер JSON, написанный на D, стал самым быстрым парсером JSON в мире

 ,

Группа Open Source

Долго время производительность JSON-парсера на D оставляла желать лучшего. Однако в последнее время ситуация начала меняться. На смену устаревшему парсеру std.json пришел новый экспериментальный парсер stdx.data.json, нацеленный на включение в Phobos. Однако несколько дней назад вышел релиз нового экспериментального парсера fast, который не только обошел все другие реализации, но и сделал парсер JSON на D самым быстрым парсером в мире, обгоняя парсер на Python в более чем 6 раз по памяти и в 14 раз по скорости. Ниже приведены замеры его производительности.

Language 	Time,s 	Memory, Mb
D Gdc Fast 	0.34 	226.7
C++ Rapid 	0.79 	687.1
C++ Gason 	0.83 	582.2
Rust 	 	1.26 	234.7
Crystal Schema 	1.62 	293.2
Crystal 	2.59 	1061.4
Crystal Pull 	2.70 	1.2
Nim Clang 	3.30 	1280.3
Nim Gcc 	3.57 	1284.0
Python Pypy 	4.99 	1365.4
C++ LibJson 	5.49 	2796.3
Go 	 	6.07 	479.4
Ruby YAJL 	8.23 	1085.5
Python 		9.85 	1409.1

>>> Подробности (github.com)

Xroft
()

Книга «Programming in D» доступна в бумажном варианте

 

Группа Документация

Книга «Programming in D» доступна в бумажном варианте!

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

( читать дальше... )

>>> Подробности (createspace.com)

tired_eyes
()

Экспериментальная поддержка С++ компилятором LDC

 calypso, ,

Группа Open Source

Одной из главных проблем затрудняющих переход программистов С++ на D является отсутствие возможности простой работы с уже написанными библиотеками на С++.

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

В настоящий момент рассматривается возможность о перспективах слияния Calypso с основным компилятором DMD.

>>> Подробности (github.com)

Xroft
()

Новый высокопроизводительный движок JavaScript Higgs

 , ,

Группа Open Source

Вышла новая версия высопроизводительного движка JavaScript Higgs, написанного на D. Тестирование новой версии показало, что практически во всех тестах движок значительно обходит в производительности TraceMonkey и v8.

Результаты теста for-in loops:

  • Higgs 2.91s
  • V8 3.29.66 (baseline) 4.98s
  • V8 3.29.66 (Crankshaft) 4.95s
  • TraceMonkey 4.12s

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

>>> Подробности (wordpress.com)

Xroft
()

Вышла новая версия компилятора языка D — DMD 2.066

 , , ,

Группа Open Source

К наиболее значимым изменениям можно отнести следующие:

  • Сделан большой прогресс в сторону реализации ручного управления памяти. Теперь в языке появился атрибут @nogc, который позволяет отключить сборщик мусора. Также добавлен ключ -vgc для вывода списка всех позиций выделения памяти для GC в коде.
  • Новая языковая конструкция extern (C++, namespace) теперь позволяет использовать прямые вызовы функций C++ из пространств имён.
  • Улучшен механизм автоматического определения типов в шаблонах. Шаблон вида «void foo(T)(T[] arr, T elem)» теперь может быть вызван как «foo(a, 1)», если a определено как «short[] a». Раньше было необходимо явно приводить 1 к типу short.
  • Реализована поддержка унифицированного синтаксиса создания для встроенных скалярных типов.

Также на днях вышла в свет новая версия компилятора LDC 0.14, работающего поверх LLVM.

Также стоит отметить большой прогресс со стороны компилятора SDC, реализованного на самом D.

>>> Подробности (dlang.ru)

Xroft
()

Вышел компилятор LDC 0.13.0

 , ,

Группа Open Source

Вышла новая версия LDC — компилятора языка D основанная на виртуальной машине LLVM. От оригинального компилятора DMD LDC отличается более высокой скоростью работы, а так же поддержкой широкого набора архитектур. Так LDC поддерживает архитектуры ARM и PowerPC. Однако ввиду того, что стандартная библиотека Phobos пока не имеет полной поддержки сторонних архитектур полноценная разработка на D под ARM пока не возможна.

>>> Подробности (dlang.org)

anonymous
()

Tkd — кроссплатформенный GUI тулкит для D

 , , , tkd

Группа Open Source

Каждый программист, который писал приложения на таких языках как Perl, Ruby или Python, знает о существовании графического тулкита Tk. Tk обязан своей популярностью тем, что позволяет быстро и просто создавать графические приложения. Во многом именно благодаря этому тулкиту Python получил такое широкое распространение.

Сегодня программист из комьюнити D Gary Willoughby анонсировал порт тулкита Tk на язык D. Порт носит название Tkd. Ключевой особенностью Tkd является полная совместимость с документаций от оригинального Tk.

>>> Подробности (github.com)

Xroft
()

Язык программирования Delight

 , delight,

Группа Open Source

Сегодня стало известно о возрождении языка программирования Delight. Delight представляет собой новый объектно-ориентированный язык, сочетающий в себе элементы синтаксиса языков Python, D, Haskell и Ada. Новая версия полностью переписана на D2.

В отличие от Python Delight является строго типизированным языком, однако допускает автоматическое определение типа с использованием ключевого слова auto. Так же как Python Delight использует ключевые слова как in, less than, and, equal to вместо математических операторов. Как и D Delight поддерживает юнит-тесты, а так же механизм assert'ов.

Пример кода:

procedure main:

    auto array = [ "a": 1, "b": 2, "c": 3 ]
    for key, element in array:

        if element in [ 0, 2, 4 ]:
            print key ~ "'s in!"

        else if element equal to 3:
            print add( element, 2 )

        else:
            print key ~ "'s out!"

    print { i * 2 for i in 0 .. 5 where i ^ 2 less than 5 }
    # prints [0, 2, 4]
Интересной возможностью является возможность использования исходного кода на D без модификации. Для этой цели применяется директива Passthrough.

Для программистов на Python, которым необходима интеграция с D существует обертка Pyd обеспечивающая возможность использования общего с Python API.

>>> Подробности (github.com)

Xroft
()

GDC получил поддержку ARM

 , ,

Группа Open Source

GDC — GNU версия фронтэнда для языка программирования D получила поддержку архитектуры ARM. В качестве бекэнда используется компилятор GCC. В настоящий момент поддержка ARM далеко не полная и в первую очередь акцентирована на программирование в Linux дистрибутивах работающих на архитектуре ARM. Однако уже сейчас компилятор успешно проходит все внутренние тесты. В ближайшее время планируется доработать поддержку программирования на Android и iOS, что позволит разработчикам использовать язык D для программирования смартофонов.

Это далеко не единственный прогресс в пользу поддержки языком архитектуры ARM. Буквально неделю назад было объявлено, что LDC (компилятор на базе LLVM) так же получил экспериментальную поддержку ARM.

>>> Подробности (dlang.org)

Xroft
()

Выход новой версии языка программирования D 2.065

 ,

Группа Open Source

D — объектно-ориентированный, императивный, мультипарадигмальный язык программирования, созданный Уолтером Брайтом из компании Digital Mars. Изначально был задуман как реинжиниринг языка C++, однако, несмотря на значительное влияние С++, не является его вариантом. В D были заново реализованы некоторые свойства C++, также язык испытал влияние концепций из других языков программирования, таких как Java, Python, Ruby, C# и Eiffel.

Список изменений версии 2.065:

  • Изменения в компиляторе:
    • Исходный файл на языке D может теперь запускаться если стоит параметр "-run"
  • Изменения в самом языке:
    • Команда «Goto» теперь не пропустит объявления переменных.
    • Все экземпляры функции теперь выводят свои атрибуты.
    • Добавлен новый квалификатор типа inout const.
    • Пакеты и имена модулей, сейчас не имеют типа.
    • Константы и неизменяемые поля с инициализаторами считаются устаревшими.
    • Устарели неупорядоченные сравнения с плавающей запятой.
  • Изменения в библиотеках:
    • Множество функций в std.algorithm могут быть использованы в качестве предикатов для других функций.
    • Позволяет std.algorithm.all быть использованым без предиката.
    • Добавлены std.uni.byGrapheme и std.uni.byCodePoint.
    • Добавлена поддержка любого количества аргументов, в std.range.only.

Более подробнее здесь.

Список багфиксов

>>> Сайт (dlang.org)

fallout4all
()

Открыта регистрация на DConf 2014

 ,

Группа Open Source

Сегодня стало известно об открытии регистрации на одну из крупнейших конференций для программистов на языке D - DConf 2014. В настоящий момент начат прием предварительных заявок на участие в конференции с докладами. Конференцию проводят ведущие разработчики D при поддержке Facebook и Sociomantic.

В настоящий момент доклады планируется разделить на следующие секции:

  • Язык. Идиомы, техника программирования, новые подходы.
  • Инструменты программиста. Все что облегчает работу над кодом.
  • Опыт. Использование D в реальном мире.
  • Экспертам. Архитектура компилятора и структура стандартной библиотеки.
  • Актуальные темы. Дебаты о сборщике мусора, переходе на D с других языков, и дальнейших направлений развития языка.

Из уже заявленных докладов планируется доклад о разработке высоконагруженных решений на web-сервере Vibed.

Материалы DConf 2013 выложены в свободный доступ тут.

>>> Подробности (dconf.org)

anonymous
()