LINUX.ORG.RU

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

Мини-новость: Rust 1.21 (168 комментариев)
Мини-новость: Вышла DlangIDE 0.8 (55 комментариев)

Релиз CoffeeScript 2

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

CoffeeScript — язык программирования, который транслируется в JavaScript. Синтаксис CoffeeScript вдохновлен языками Ruby и Python. Автор языка Джереми Эшкинас (Jeremy Ashkenas) также известен созданием библиотек Underscore и Backbone.

Новый релиз языка направлен на сокращение разрыва между CoffeeScript и современным JavaScript (ES6, ES7). Так => и class транслируются соответственно в => и class. При этом. если в целевом рантайме та или иная возможность JS не поддерживается, может потребоваться дополнительная трансляция итогового JS.

( Новое и измененное в версии 2 )

>>> Подробности

 , ,

hobermallow ()

Состоялся релиз Nuklear+ - библиотеки-обёртки для GUI Nuklear

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

Nuklear+ (читается как «Nuklear cross», значит «кроссплатформенный Nuklear») — это надстройка над GUI библиотекой Nuklear, которая позволяет абстрагироваться от драйвера вывода и взаимодействия с операционной системой. Нужно написать один простой код, а он потом уже сможет скомпилироваться под все поддерживаемые платформы:

  • SDL: OpenGL 3, OpenGL 2, OpenGL ES 2.0, Emscripten
  • GLFW: OpenGL 3, OpenGL 2, Emscripten
  • X11: OpenGL 3, OpenGL 2, чистый Х11 без OpenGL
  • GDI+

На хабрахабре есть статья про использование Nuklear+. Она же доступна на английском. Пример игры, написанной на Nuklear+ и портированной через Emscripten, можно увидеть тут. Так же имеется веб демо возможностей самого Nuklear.

>>> Репозиторий проекта Nuklear+

 , , ,

DeXPeriX ()

Вышел flameprof ­— генератор флеймграфов по стате от cProfile

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

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

cProfile может отдавать очень точные тайминги, плюс можно указать собственный таймер и собирать стату только по времени cpu (не wall clock, фильтруя ожидание на io). Но cProfile схлопывает ромбовидные пути в трейсах и потеря этой информации затрудняет отрисовку флеймграфов при помощи популярного flamegraph.pl (http://www.brendangregg.com/flamegraphs.html).

Flameprof может восстановить информацию и выдать корректный трейслог, по которому можно сделать флеймграф, используя flamegraph.pl или встроенный в flameprof генератор svg.

Всем успехов в профилировке!

>>> Подробности

 ,

anonymous ()

Node v8.5.0

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

Вышло обновление платформы Node v8.5.0.

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

>>> Подробности

 , ,

michey ()

Atom-IDE

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

На фоне обновления редактора Atom до версии 1.20 (лог-пост) остался незамеченным анонс Atom-IDE.

github совместно с facebook представили набор пакетов ide-typescript, ide-flowtype, ide-csharp, ide-java и ide-php.

Суть выпуска пакетов в расширенной и более целостной поддержке IDE-специфичных фич для этих языков.
Каждый пакет предоставляет улучшенную реализацию автодополнения, диагностик, поиска вхождений\вызовов.
Реализация дополнений стала возможна благодаря внедрению поддержки Language Server Protocol.

>>> Подробности

 ,

michey ()

Binary Analysis Platform 1.3

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

Binary Analysis Platform (BAP) — это платформа для обратной разработки и анализа программ, для которых недоступны их исходные коды. Поддерживается более 30 архитектур, в первую очередь x86, x86-64 и ARM. BAP работает путём дизассемблирования и перевода инструкций в RISC-подобный язык — BAP Instruction Language (BIL). Такой подход позволяет платформе анализировать код одинаково хорошо, независимо от архитектуры. Вместе с платформой поставляется набор инструментов, библиотек и плагинов. Основная цель платформы — предоставить инструментарий для автоматического анализа программ.

BAP написана на Ocaml, и это предпочтительный язык для написания средств анализа, но также имеются биндинги к C, Python и Rust.

Релиз 1.3 является самым большим публичным релизом платформы, который содержит много нового:

  • новый загрузчик, который работает со всеми видами бинарных файлов, в том числе модулями ядер Linux и Darwin, разделяемыми библиотеками и другими представлениями программ;
  • сокращено потребление памяти;
  • Primus — фреймворк эмуляции ЦП;
  • лучшее представление программ благодаря удалению «мёртвого кода»;
  • поддержка LLVM 4.0.

>>> Исходный код на Github

>>> Подробности

 , ,

olibjerd ()
Мини-новость: Релиз набора компиляторов LLVM 5.0 (42 комментария)

Вышла новая версия языка Nim 0.17.2

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

7 сентября вышла новая версия языка программирования Nim 0.17.2.
Nim - это язык системного программирования, который ориентирован на производительность, мобильность и выразительность.

В этой версии был сделан упор на стабильность компилятора, и были исправлены важные баги. Следовательно, очень рекомендуется обновиться. А новой функцией в этом выпуске является поддержка файлов .nimble-link. Это было сделано для поддержки последней версии Nimble с функцией «develop».

Этот выпуск также включает в себя новую версию пакетного менеджера Nimble 0.8.8 который обновился 3 сентября. Где тоже было исправлено множество багов. Но стоит отметить что это достаточно крупное обновление с большим количеством новых функций. С которыми можно ознакомиться по ссылке
https://github.com/nim-lang/nimble/blob/master/changelog.markdown#088---03092017
Из наиболее важных это:

  • Реализована команда разработки develop
  • Реализована задача по умолчанию test для пакетов которые не определяют ее
  • Снижение потребления памяти если пакет содержит много файлов

А 6 сентября появилась новая документация к Nim на DevDocs
http://devdocs.io/nim/

>>> Version 0.17.2 released

 , ,

opqx ()

Релиз D 2.076.0

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

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

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

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

>>> Подробности

 ,

umren ()

Go 1.9

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

Команда разработчиков Go представила релиз Go 1.9. Релиз доступен на странице загрузки. В данном релизе имеется много изменений в языке, стандартной библиотеке, среде выполнения и инструментарии. Большая часть усилий разработчиков была положена на усовершенствование среды выполнения и инструментария.

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

>>> Подробности

 

newb ()
Мини-новость: re2c 1.0 (40 комментариев)

Red 0.6.3

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

Red — императивный функциональный язык программирования, представленный в 2011 году французским программистом Ненадом Ракоцевичем. Его синтаксис унаследован от интерпретируемого языка REBOL.

Цель создания Red — преодоление ограничений REBOL. По словам создателя, Red является «языком полного стека».

Red может использоваться как для высокоуровневого предметно-ориентированного программирования и создания графических интерфейсов, так и для низкоуровневого программирования операционных систем и драйверов.Его основные черты: простой синтаксис, гомоиконность, система макросов, статическая и JIT-компиляция, кросс-компиляция, малый размер исполняемых файлов (при отсутствии внешних зависимостей), REPL, возможность использовать как встраиваемый язык.

Данный релиз содержит порядка 800 исправлений и закрывает 86 задач. Одна из основных новостей — поддержка GUI под macOS с помощью нового бэкенда (что делает GUI полностью кросс-платформенным). Также можно отметить появление типа данных date!, расширения IO API, обновления LibRed.

>>> Подробности

 ,

nihirash ()

PicoLisp 17.6

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

29 июня вышла новая версия интерпретатора PicoLisp.

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

Обновление включает в себя две новые функции, исправления ошибок и улучшения repl, добавлена библиотека для Android и новый компонент TreeChart для web-gui.

>>> Страница загрузки

 ,

nihirash ()

Продемонстрирована возможность разработки частей Linux на Rust

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

Французский программист написал статью, в которой рассмотрел возможность переписывания ядра Linux на Rust.

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

В качестве «Proof of Concept» была приведена реализация системного вызова, содержащая вставки на Assembler внутри unsafe-блоков. Код компилируется в объектный файл, не связанный с библиотеками и интегрируемый в ядро во время сборки. Работа производилась на основе исходного кода Linux 4.8.17.

>>> Статья

 , ,

batya ()
Мини-новость: Nim 0.17.0 (139 комментариев)

Mono 5.0

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

Представлен релиз Mono 5.0, свободной реализации технологии .NET для различных платформ.

( Список изменений )

>>> Подробности

 , ,

narkoman228 ()

MakiseGUI — свободная библиотека графического интерфейса для микроконтроллеров

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

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

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

>>> GitHub

>>> Подробности работы, видео, примеры кода

 , , , ,

SL_RU ()
Мини-новость: Vala 0.36.0 (40 комментариев)