LINUX.ORG.RU

Новости «Разработка»

Активные теги:

 , , , , , , , , ,

: Lazarus 2.2 (234 комментария)
: Zig 0.9 (64 комментария)
: Язык программирования Crystal обзавёлся интерактивным интерпретатором (62 комментария)

Mold 1.0

 

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

Mold (a modern linker) — новый высокоскоростной компоновщик для Unix-подобных платформ (i386 и x86-64) от автора LLVM lld.

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

Согласно проведённым замерам производительности, новый компоновщик в разы быстрее LLVM lld и на порядок быстрее GNU gold, будучи при этом совместим с ними.

Проект написан на C++20 и распространяется под лицензией GNU AGPL v3. Автор заявляет о возможности приобретения коммерческой лицензии для организаций, которых не устраивают условия AGPL, а также о поиске спонсора, который может купить у него права на проект и сменить лицензию на более пермиссивную.

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

anonymous
()
: Синхронизированы версии компиляторов языка D (dmd, ldc) и gcc: D 2.098 теперь в gcc (171 комментарий)

Rakudo 2021.10

 moarvm, , ,

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

Rakudo — компилятор языка программирования Raku (до октября 2019 года называвшегося Perl6). Компиляция осуществляется для MoarVM, JVM и других виртуальных машин.

Выпуск включает изменения в трёх смежных проектах: Rakudo, NQP (github.com) и MoarVM. Суммарно сделано 922 коммита.

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

>>> Подробности (rakudoweekly.blog)

perl5_guy
()
: SRELL 2.930 — библиотека для С++, реализующая работу ECMAScript-совместимых регулярных выражений (25 комментариев)

Fortran: 65 лет с момента выхода первого справочного руководства

 , ,

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

В этот день 65 лет назад, 15 октября 1956 года, появилось первое справочное руководство для программирования на языке FORTRAN: «The Fortran Automatic Coding System for the IBM 704».

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

>>> Подробности (fortran-lang.org)

grem
()

cppcheck 2.6

 , , ,

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

Вышла новая версия cppcheck — статического анализатора исходного кода для языков C и C++.

В этом выпуске представлены новые проверки:

  • пропущенный return в функции;
  • запись перекрывающихся (overlapping) данных, обнаружение UB;
  • сравнение с значением вне допустимого диапазона типов;
  • отключение copy elision из-за использования return std::move(local);
  • открытие файла на чтение и запись в разных потоках (streams).

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

Помимо этого, была завершена проверка соответствия исходного кода стандарту MISRA C 2012: реализованы все правила MISRA C 2012, кроме 1.1, 1.2 (должны обеспечиваться компилятором) и 17.3 (может обеспечиваться компилятором), включая правила в поправках 1 и 2.

Исходный код анализатора распространяется по лицензии GPLv3.

>>> Подробности (sourceforge.net)

Siborgium
()
: Rust 1.55.0 (150 комментариев)

Веб-фреймворк Phoenix 1.6.0

 ,

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

Phoenix — веб-фреймворк на языке программирования Elixir, призванный обеспечить высокую производительность веб-приложений.

Основой фреймворка является движок LiveView, который обеспечивает возможность обновления DOM на стороне сервера с помощью долгоиграющего WebSocket-соединения, что позволяет писать интерактивные веб-приложения без использования JavaScript.

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

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

perl5_guy
()

Вышел Golang 1.17

 

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

Как всегда, релиз следует обещанию совместимости с Go 1.x. А значит что все существующие программы так же будут собираться Golang 1.17.

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

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

lazy8
()

Cppcheck 2.5

 , , ,

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

Вышла новая версия статического анализатора для С и С++.

В новой версии:

В парсере:

  • различные исправления;
  • теперь поддерживаются все возможности c++11, c++14, c++17;
  • частичная поддержка с++20.

Также анализатор теперь:

  • знает больше об API;
  • показывает меньше ненужных предупреждений;
  • находит больше багов;
  • исправлены вылеты и ложные срабатывания в Misra.

Добавлены новые проверки:

  • подозрительное присваивание контейнера/итератора в условии;
  • повторное пробрасывание текущего исключения с помощью throw;.

Примеры кода, которые демонстрируют новые проверки:

void f(std::string s) {
  if (s = "123") {
  }
}
Assignment in condition should probably be comparison
void func1(const bool flag) { try{ if(!flag) throw; } catch (int&) { ; } }
Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow.
If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object

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

fsb4000
()

Zig 0.8

 , ,

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

После 7 месяцев работы и 2711 коммитов вышла новая версия Zig: 0.8

Zig это:

  • Современный компилятор С

  • Современный компилятор С++

  • Компилятор языка Zig

  • Сборочная система для C, C++, языка Zig

  • (Планируется) Пакетный менеджер для С, C++, языка Zig

Zig разрабатывается под лицензией MIT: https://github.com/ziglang/zig/blob/master/LICENSE

Язык Zig – это язык общего назначения, который старается быть простым. Нет макросов, скрытых аллокаций, скрытого потока управления.

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

Полный список изменений: https://ziglang.org/download/0.8.0/release-notes.html

>>> Официальный сайт (ziglang.org)

fsb4000
()

Мини-версия рантайма для программирования микроконтроллеров на D

 ,

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

Dylan Graham представил LWDR. Это легковесный D-рантайм для программирования на D микроконтроллеров на базе ОС реального времени. Текущая версия нацелена на ARM Cortex-M.

Разработка не ставит целью полное покрытие всех возможностей D, но предоставляет базовые средства. Распределение памяти производится вручную (new / delete), мусорщик не реализован, но имеется ряд хуков для использования средств RTOS.

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

>>> LWDR (Light Weight D Runtime) for Microcontrollers v0.2.3 (dlang.org)

glebiao
()
: QtProtobuf 0.6.0 (10 комментариев)

Perl 5.34.0

 

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

С момента выхода Perl 5.32.0 прошло около десяти месяцев. Если исключить документацию, генерируемые автоматически файлы и инструментарий для формирования самого релиза, было изменено 150,000 строк в 1,300 .pm, .t, .c и .h-файлах.

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

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

perl5_guy
()
: Состоялся выпуск FPC 3.2.2 (282 комментария)

Solvespace 3.0

 ,

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

Solvespace – это параметрическая 2D/3D САПР для проектирования твёрдых тел и сборок из них. 17 апреля вышла новая версия 3.0. По сравнению с предыдущим стабильным релизом 2.3:

Новые фичи для скетчей и групп

  1. Новая булева операция intersection для твёрдых тел (в 2.3 были лишь union и difference)
  2. Новые группы: revolution и helical extrusion (в 2.3 были лишь extrude и lathe)
  3. Группы extrude, lathe, translate и rotate могут использовать булеву операцию «assembly» для ускорения вычислений (в 2.3 операции assembly не было)
  4. Подавление (suppress, как в Solidworks) extrude и lathe groups (в 2.3 не было)
  5. Группы Translate и rotate можно повторять (= step and repeat rotation / translation = circular and linear pattern) с операциями «difference» и «assembly»
  6. На поверхности тел можно накладывать картинки (примерно как раньше можно было писать true type шрифтом)

…и другие.

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

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

the1
()

Релиз Erlang/OTP 24.0

 ,

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

Вышел важный релиз платформы для разработки высоконагруженных и отказоустойчивых систем - Erlang/OTP за номером 24.

Выпуск включает в себя более 1400 коммитов, изменивших около полумиллиона строк. Ключевым нововведением является добавление JIT-компилятора «BeamAsm» в виртуальную машину Erlang'а (BEAM). Попытки реализации данного функционала предпринимались на протяжении ~10 лет и наконец увенчались успехом.

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

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

perl5_guy
()