LINUX.ORG.RU

Программирование


43

0

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

Драйверы устройств в Linux

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

Опубликован перевод серии статей «Драйверы устройств в Linux». По заявлению автора: «Цель этой серии статей о драйверах Linux — рассказать об обычной технической теме так, чтобы она была интересна более широкому кругу читателей». Пока что написаны (и переведены) 17 статей серии. Автор (Anil Kumar Pugalia) обещает продолжить серию, а Николай Ромоданов обещает переводить следующие статьи по мере их появления.

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

 ,

vikos
()

Объявлено о выходе GNAT и SPARK GPL 2012

Группа Open Source

Новое издание компилятора и набора рабочих программ Ada предоставляет множество новых функций и улучшений:

  • полная поддержка стандарта Ada 2012;
  • улучшение поддержки C/C++, улучшение автоматической коррекции ошибок, улучшенное меню для Version Control System, улучшение в работе MDI (Multiple Document Interface);
  • теперь поддерживается GTK-2.24;
  • поддержка выгрузки плагинов;
  • улучшена интеграция Ada/C++;
  • расширена система сообщений об ошибках и предупреждениях.

GNAT GPL и SPARK GPL издания доступны для разработчиков свободного программного обеспечения. Компилятор лицензируется на условиях GNU General Public License. Библиотека рабочих программ лицензируется либо под GNU General Public License («GNAT GPL Edition» от AdaCore), либо GNAT Modified General Public License (GCC, GNAT Pro). GNAT — часть большинства дистрибутивов Linux и BSD.

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

 , ,

splinter
()

Предложен проект создания сервера LLVM/Clang

Группа Open Source

Предложен для реализации проект постоянного кеширующего сервиса Clang Server (clangd) для обслуживания инфраструктуры из множества разнородных, сложных и интерактивных C++ инструментов. В частности этот сервисный слой позволяет обобщить и построить в рамках libclang удобное взаимодействие множества самых разнородных редакторов, интегрированных сред разработки (IDE) и популярных Unix-инструментов разработки. Этот сервис будет реализован строго в рамках Clang/LLVM и будет поддерживать разработку для языков C, C++, Obj-C и Obj-C++.

Сервис будет предоставлять функциональность, которая традиционно присуща для IDE, но при этом задумка заключается в том, чтобы в рамках единой среды дать возможность работать сразу с несколькими разными «плохо интегрированными в систему» редакторами с одновременным обеспечением связности с такими слоями LLVM, как Tooling library, libclang и в потенциале этот сервис будет иметь свою собственную расширяемую через плагины структуру.

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

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

 ,

Boy_from_Jungle
()

Вышел пятый выпуск Haskell Platform

Группа Open Source

Вчера, 3 июня, спустя примерно полгода со времени предыдущего релиза, вышел пятый (за номером 2012.2.0.0) выпуск Haskell Platform — простого в установке окружения разработки для языка Haskell.

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

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

 , , , ,

quasimoto
()

Perl 5.16

Группа Open Source

Вечером 20 мая, спустя год после публикации версии 5.14, состоялся релиз Perl версии 5.16.
Из изменений можно отметить следующие:

  • Поддерживаемая версия unicode обновлена до 6.1.
  • use VERSION теперь переводит интерпретатор в режим указанной версии. Например, указав use v5.14 в версии 5.16 мы получим поведение perl 5.14, а все features из других версий будут отключены.
  • Новое ключевое слово __SUB__, с помощью которого можно получить ссылку на текущую подпрограмму в области видимости самой подпрограммы. Теперь написание однострочников стало еще проще:
    # вычислим факториал 10 в одну строку
    my $fact = sub { $_[0]>0 ? $_[0] * __SUB__->($_[0]-1) : 1 }->(10)
    
  • Новая функция fc, производящая unicode casefolding над переданной строкой. Если ранее для сравнения не ASCII строк в разном регистре вы применяли lc() или uc(), то вы делали это неверно. Например слово «Reichwaldstraße» в верхнем регистре записывается, как REICHWALDSTRASSE. Что после перевода в нижний регистр обоих вариантов приведет к сравнению «reichwaldstraße» и «reichwaldstrasse». В итоге сравнение закончится неудачей. Именно эту проблему решает функция fc().

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

 ,

Olegymous
()

Dell анонсировала проект «Sputnik»

Группа Ubuntu Linux

7 мая на Ubuntu Developers Summit корпорация Dell анонсировала проект «Sputnik». Целью проекта является изучение перспективы создания ноутбуков с набором предустановленного СПО для разработки с последующей доустановкой самими разработчиками необходимого для них набора ПО из репозиториев. В качестве этого полугодового эксперимента выбран ноутбук XPS13 Ultrabook с Ubuntu 12.04.

По словам технического директора по интернет-маркетингу компании Dell Джорджа Бартона, данный проект направлен на улучшение понимания потребностей разработчиков в используемом ПО и создания соответствующих наборов профилей. Планируется, что первые профили будут ориентированы на разработку приложений под Android, на Ruby и JavaScript.

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

Демонстрационный образ для Dell XPS13 можно скачать отсюда.

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

 , , ,

amorpher
()

Сервер TCP/IP ... много серверов хороших и разных

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

Зачастую при необходимости написания TCP/IP сервера используются одна из двух классических технологий: последовательный сервер или параллельный сервер на основе fork(). Хотя реально можно предложить гораздо больше принципиально различных серверов, которые будут существенно отличаться своей сложностью, временем реакции на запрос клиента и другими показателями. В статье О.И. Цилюрика описано семь видов различных альтернативных технологий построения сервера TCP/IP, а с учётом обсуждаемых вариаций и высказанных соображений — и того больше. Приведены сравнительные характеристики по задержке времени получения ответа (время реакции).

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

 ,

vikos
()

Сеть IP — когда писать программы лень

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

Автор этой статьи рассуждает о некоторых способах создания прикладных TCP/IP серверов, крайне редко, к сожалению, используемых в прикладном программировании, которые почти не требуют написания программного кода. Поводом для появления этих коротких заметок явилось намерение напомнить о том, что иногда для того, чтобы описать в программе нечто, по существу своему являющееся достаточно сложным, могут существовать способы выразить эти же вещи намного проще.

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

 

vikos
()

BlueGriffon 1.5 «Perluète Culbutée»

Группа Mozilla

BlueGriffon — HTML-редактор, построенный по принципу WYSIWYG на движке Gecko. Поддерживает HTML 4, HTML 5 и XHTML. Имеется система анализа объектной модели документов, редактор SVG-изображений и интерфейс для CSS-стилей.

Основные изменения с предыдущей версии:

  • полный рефакторинг CSS-свойств панели;
  • возможность сохранения встроенной кодировки страницы при последующем её просмотре;
  • возможность открытия локальных PHP-файлов;
  • возможность изменения кодировки документа;
  • плавающая панель инструментов совмещена с панелью поиска;
  • создание резервной копии перед сохранением HTML-файла;
  • копирование-вставка URL с абсолютным путём;
  • исправлена плавающая панель инструментов;
  • возможность комментирования PHP и PI;
  • обрезка контента c отрицательными полями (margin);
  • и другое.

Имеется поддержка платных расширений.

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

 , , ,

amorpher
()

Международная научная школа CSAM2012

Группа Конференции и встречи

Научно-образовательный центр по нанотехнологиям МГУ приглашает вас и ваших коллег (студентов, аспирантов, молодых ученых) принять участие в работе Международной научной школы «Компьютерное моделирование новых материалов», которая будет проходить с 16 по 21 июля 2012 г. в Московском Государственном Университете имени М.В. Ломоносова.

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

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

>>> Регистрация участников

 , , ,

SlonoInquisitor
()

DevConf 2012 — 9-10 июня в Москве. Приезжают авторы PHP, MySQL, MongoDB

Группа Конференции и встречи

DevConf.ru — профессиональная конференция, посвященная ведущим технологиям программирования. Делегатам предоставляется уникальная возможность — получить доступ сразу ко всем лидирующим технологиям веб-разработки.

9 июня 2012 года пройдут 5 конференций: PHP, Perl, Ruby on Rails, Python, JavaScript.

10 июня 2012 года пройдет группа уникальных мастер-классов.

Конференция нацелена на профессиональных веб-разработчиков и на тех, кто мечтает ими стать.

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

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

 , , , ,

devconf
()

Вышла библиотека MathGL 2.0

Группа Open Source

Платформонезависимая библиотека MathGL предназначена для построения широкого спектра графиков (кривых, поверхностей, поверхностей уровня и т.д.). Есть возможности экспорта графики в растровые (PNG, JPEG) или векторные (EPS, SVG, TeX, OBJ) форматы и рисования в консольном режиме.

В новой версии значительно увеличена скорость рисования, унифицирован интерфейс, добавлены новые типы графиков и примитивов, добавлен экспорт в 3d форматы (OBJ, PRC, OFF, ...) и LaTeX, множество более мелких улучшений.

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

 , , , ,

abalakin
()

Вышел PostGIS 2.0.0

Группа Open Source

После 26 месяцев напряжённой работы вышла новая мажорная версия расширения СУБД PostgreSQL для работы с географическими объектами — PostGIS 2.0.0. PostGIS предоставляет набор типов и функций, которые позволяют использовать СУБД PostgreSQL в качестве бекенда для геоинформационных систем. Разработка PostGIS ведётся в соответствии со стандартами и спецификациями OpenGIS.

Список нововведений:

  • Поддержка растровых данных, растрового и векторного анализа.
  • Топологические модели с поддержкой общих границ.
  • Интеграция с typmod для автоматического создания таблицы geometry_columns.
  • 3D и 4D индексация.
  • Основанный на индексации быстрый поиск соседей.
  • Новые функции: ST_Split, ST_Node, ST_MakeValid, ST_OffsetCurve, ST_ConcaveHull, ST_AsX3D, ST_GeomFromGeoJSON, ST_3DDistance.
  • Улучшения в дампере и загрузчике шейп-файлов.
  • Поддержка мульти-файлового импорта и экспорта в GUI.
  • Геокодер оптимизирован для бесплатных данных US Census TIGER (2010).

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

 , , ,

provaton
()

Планы разработки языка D3

Группа Open Source

На днях в блогах разработчиков языка программирования D и его референсного компилятора dmd появилось сообщение о том, что ветка D2 вскоре будет заморожена и дальнейшие изменения вноситься не будут кроме исправляющих существенные и часто повторяющиеся ошибки. По совам главного разработчика D Уолтера Брайта это связано с тем, что D2 стал слишком стабилен и вносить в него новые свойства оказывается опасно. Другой разработчик --- известный программист Андрей Александреску выразил озабоченность тем фактом, что качество реализации D2 в dmd достигло такого уровня, когда он может быть использован для реализации конкретных прикладных проектов. По словам обоих авторов описанные выше проблемы являются непреодолимым препятствием для реализации в D2 новых, более современных концепций и передовых идей.

В связи с этим команда авторов D2 и компилятора dmd рассматривает варианты перехода на 3-ю ветку для внесения существенных изменений в структуру проекта. Основные проблемы D2 с точки зрения его дизайна по словам разработчиков следующие.

  • Слишком большая неопределённость и обилие типов. В частности, 3 типа юникода: char, wchar и dchar, 8 целочисленных типов данных, 3 с плавающею запятой. В качестве примера приводится язык Python, где в версии 3 оставлен всего 1 целочисленный, 1 действительнозначный и 1 юникодовый типы. Уменьшение числа типов способствует лучшей читаемости и поддержке кода и в то же время избавляет от ряда ошибок при переносе на другие архитектуры.
  • Недостаточная реализация концепции метапрограммирования. Проблема заключается в том, что компилятор нередко не знает, чего от него хочет программист, а тот не может объяснить это компилятору.
  • Поддержка целочисленных вычислений с большими числами. DВ настоящее время в D2 поддерживаются максимум 64 битные целые числа, что в будущем неизбежно приведёт к проблемам. Следует реализовать механизм поддержки целых чисел произвольного размера по аналогии с существующим типом real. При этом размер типа будет определяться на этапе компиляции, а не динамически, как в Python.
  • Поддержка «открытых» классов, к экземплярам которых можно добавлять новые поля и методы динамически во время работы программы. При этом будет реализован механизм памяти: каждый объект помнит свой исходных класс и знает все свои поля и методы, так что можно в реальном времени проверить, был ли добавлен нужный метод в данный объект или нет.

Вопрос об отделении ветки D3 будет рассматриваться после выпуска корректирующего обновления dmd 2.059 и 1.074.

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

 

Vudod
()

Вышла платформа Fabric Engine для скриптовых языков

Группа Open Source

Fabric Engine — это платформа для скриптовых языков, которая позволяет ускорить их выполнение и использовать многопоточность более эффективно. Первый релиз поддерживает JavaScript и Python. Лицензия платформы AGPLv3. Она может быть использована как на серверной стороне, так и на стороне клиента (поддерживаются Firefox и Chrome), облачной инфрастуктуре.

Для достижения поставленной цели исходный скрипт преобразуется в код на языке KL. KL — строго типизированный язык, сходный с С. Скрипт, преобразованный в KL, транслируется в машинный код при помощи LLVM. Если в системе доступен GPU, то будет использован и он.

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

Производитель считает, что эта разработка делает скриптовые языки вполне применимыми в области высокопроизводительных вычислительных задач (HPC). Можно отметить, что в этом направлении идет адаптация PyQt для Fabric Engine.

github репозиторий со стабильной версией
github репозиторий с нестабильной версией

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

 , ,

pylin
()

Вышел StarPU 1.0.0

Группа Open Source

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

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

StarPU работает под операционными системами Linux, Mac OS X и Windows. Поддерживаются следующие архитектуры процессоров:

  • обычные процессоры (x86, PPC, ...);
  • NVIDIA GPUs;
  • OpenCL;
  • Cell Processors (экспериментальная поддержка).

Планируется поддержка архитектур Intel SCC и Intel MIC.

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

 , starpu,

provaton
()

Первый стабильный релиз Go

Группа Open Source

Сегодня состоялся релиз Go 1 — первый стабильный релиз языка программирования Go. Разработчики заявляют, что программы работающие под Go 1 в большинстве случаев будут работать без изменения и в следующих версиях языка. Также теперь будут предоставляться официальные сборки компилятора для всех популярных платформ: Linux, Mac OS X, FreeBSD и Windows.

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

  • Новый тип для юникодных символов.
  • Новый тип для ошибок.
  • Простой синтаксис для удаления элемента из отображения (map).
  • Добавлен синтаксис для циклов по отображениям.
  • Добавлен синтаксис множественного присваивания.
  • Запрещен close для принимающих каналов.
  • Улучшен синтаксис композитных литералов.
  • Теперь можно использовать goroutines перед окончанием инициализации программы.
  • В функциях с именованной возвращаемой переменной нельзя использовать пустой return в случае, если возвращаемая переменная затенена локальной.
  • Изменения правил проверки равенства: добавлена возможность сравнения равенства массивов и структур, убрана возможность проверки равенства функциональных переменных и отображений (кроме сравнения с nil).
  • Полностью переработан модуль стандартной библиотеки time. Теперь он больше не привязан к unix epoch time и позволяет легко оперировать привычными единицами измерения, например, годами или часами. Также теперь различаются временные промежутки (durations) и абсолютные значения времени.

Также обновлен Google App Engine SDK для Go.

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

 ,

provaton
()

Вышел GTK+ 3.4.0

Группа Open Source

Увидела свет новая версия популярной библиотеки для создания графических интерфейсов — GTK+ 3.4.0. Список новшеств:

  • Поддержка меню в GtkApplication.
  • Новый виджет для выбора цвета.
  • Улучшена поддержка устройств тактильного ввода:
    • Новые устройства GDK_SOURCE_TOUCHSCREEN и GDK_SOURCE_TOUCHPAD.
    • Новые события GdkEventTouch и GDK_TOUCH_MASK.
    • Новый сигнал GtkWidget::touch-event.
  • Поддержка плавной прокрутки (smooth scrolling).
  • На устройствах с тачскринами поддерживается кинетическая прокрутка (kinetic scrolling).
  • Значительно улучшена поддержка Mac OS X.
  • Впервые в ветке 3.x официально поддерживается Windows.
  • Значительно дополнен бекенд для Wayland.
  • Улучшена поддержка тем:
    • Более полная поддержка CSS (можно использовать 'transparent' в качестве цвета, добавлены свойства 'background-clip', 'background-origin', 'background-size', добавлен синтаксис задания линейного градиента).
    • В CSS поддерживаются проценты, углы и другие единицы измерения.
    • Во всплывающих подсказках можно использовать скругленные углы.
    • Можно задавать отдельные темы для окон без фокуса.

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

 , , ,

provaton
()

Новый релиз фреймворка Django 1.4

Группа Open Source

С опозданием на несколько недель вышел новый мажорный релиз фреймворка для разработки веб-приложений на языке Python − Django 1.4. Список изменений весьма обширен, наиболее интересные из них:

  • Продвинутая поддержка часовых поясов (timezone).
  • Поддержка браузерных фреймворков для тестирования (например, Selenium).
  • Шаблоны для создания новых проектов.
  • Улучшена поддержка WSGI.
  • Поддержка SELECT FOR UPDATE в ORM, которая позволяет заблокировать доступ на чтение и удаление к записям, соответствующим запросу.
  • Теперь можно хранить данные пользовательской сессии в cookie.
  • Добавлен метод Model.objects.bulk_create для эффективной вставки множества записей в БД.
  • Добавлен метод QuerySet.prefetch_related, схожий с известным методом select_related, но который более эффективно работает в некоторых сложных ситуациях (например, для отношений многое-ко-многим, или при использовании GenericForeignKey).
  • Улучшено хеширование паролей. Теперь используется алгоритм PBKDF2.
  • Страницы встроенной админки теперь имеют HTML5 Doctype.
  • Улучшения админки: улучшены фильтры, добавлена возможность множественной сортировки.
  • FormWizard переписан с использованием class-based views.
  • Добавлен метод reverse_lazy, позволяющий использовать обратный резолвинг URL (django.core.urlresolvers.reverse) до загрузки URLConf.
  • Улучшена поддержка интернационализации URL.
  • Улучшен вывод отладочной информации при ошибках в шаблонах.
  • Добавлена защита от Clickjacking (выключена по умолчанию для обратной совместимости).
  • Улучшена защита от CSRF.

Надо заметить, что в релизе 1.4 убрана поддержка Python 2.4, а в релизе 1.5 будет добавлена экспериментальная поддержка Python 3, о чем можно почитать здесь.

Список изменений, ломающих обратную совместимость

Список функций, не рекомендуемых для использования (deprecated)

>>> Полный список нововведений

 , , ,

provaton
()

KDevelop 4.3

Группа KDE

Cостоялся выход версии 4.3 интегрированной среды разработки KDevelop. Как обычно, в релиз вошел ряд новых возможностей, а также исправления ошибок и улучшения производительности.

Неполный список изменений:

  • Поддержка С++11.
    Новая версия стандарта теперь частично поддерживается в KDevelop. Парсер теперь поддерживает такие новые возможности языка, как списки инициализации, лямбды, for-циклы по коллекции и шаблоны с переменным числом аргументов. Также поддерживаются =default и =delete методы, auto, ссылки на временные объекты (rvalue-references) и много другого. Тем не менее, С++11 включает много изменений и некоторые из них еще не поддерживаются. Разработчики ставят за цель улучшить поддержку в последующих релизах, чтобы сделать KDevelop отличной средой для разработки с использованием C++11.
  • Восстановление состояния редактора.
    С выходом версии 4.3 разработчики синхронизировались с Kate по функционалу работы с файлами: свернутые блоки кода, закладки и прочее теперь корректно восстанавливаются для последних 20 открытых файлов.
  • Улучшенная интеграция с системами контроля версий.
    Была добавлена область просмотра изменений в проекте, которая показывает файлы в проекте, измененные с момента последнего коммита. Также улучшен режим Review, который теперь автоматически обновляется по мере внесения изменений в код проекта.
  • Интеграция с проектами KDE
    Инфраструктура проектов KDE была адаптирована для поддержки projects.kde.org. Это позволило иметь полный список всех проектов KDE с возможностью их загрузки для быстрого начала старта работы над ними.
  • Улучшения интеграция konsole
    Встроенный konsole в KDevelop получил ряд улучшений — теперь при использовании bash стало возможно управлять сессией KDevelop, т.е. открывать и создавать файлы, выполнять поиск по файлам и пр. Просто введите help!, чтобы узнать, что теперь можно делать.
  • Форматирование кода
    Встроенное форматирование также было улучшено — теперь оно может переопределять настройки выравнивания редактора. Более того, «Custom Script Formatter», ранее поддерживавший Gnu Indent, был расширен с упрощением добавления собственных скриптов форматирования. Одним из примеров является kdev_format_source.sh, поставляемый с KDevelop, позволяющий задавать правила форматирования путем размещения файлов format_sources в дереве проекта. В связке с мощным форматировщиком uncrustify, скрипт позволяет легко работать в больших гетерогенных проектах.
  • Исправления ошибок
    Было исправлено более 170 ошибок по сравнению с KDevelop 4.2.3. Среди прочих, теперь нормально поддерживается SVN 1.7, улучшен разбор C++, улучшено взаимодействие с GDB. Также исправлено много падений и прочих проблем.
  • Оптимизации
    Кроме добавления новых возможностей и улучшения стабильности, этот релиз иммет ряд заслуживающих внимания оптимизаций — открытие больших проектов теперь должно происходить значительно быстрее. Также быстрее стал инструмент Quickopen, что делает более комфортной работу в больших проектах.

У проекта появился форум, на котором можно получить поддержку и ответы на вопросы. Также доступны список рассылки, а также канал IRC #kdevelop на freenode.

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

 , , , , , ,

Pavval
()