LINUX.ORG.RU

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


43

0

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

Первый релиз Snaked

Группа Open Source

После четырех недель активной разработки готова первая версия нового редактора для программистов на Python.

Snaked задумывался как редактор с минималистичным интерфейсом и возможностью гибкой настройки вывода типов для автодополнения всего и вся (соответственно, это позволит делать более-менее безопасный рефакторинг в дальнейшем).

В качестве статического анализатора используется Rope, поверх которого работает модуль выведения типов на основе пользовательских правил.

Также поддерживается переход к определению символа, как явно объявленного в коде, так и написанного в комментарии или строке. Плюс удобный навигатор по модулю и линтер на основе pyflakes.

Дополнительные возможности, не связанные с редактированием исходников:

  • Ориентирован на работу с клавиатуры.
  • Два вида интерфейса: стандартный с табами и по отдельному окну на каждый редактор.
  • Умное выделение позволяет оперировать с блоками кода: определением класса или функции, группой строк, списком параметров или строковым литералом.
  • Сессии.
  • Диалог быстрого открытия файлов.

В ближайшее время будет реализована поддержка плагинов от GEdit.

Документация и скриншоты

Короткий скринкаст про переопределение типов

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

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

 ,

baverman
()

Valgrind 3.6.0

Группа Open Source

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

  • Поддержка ARM/Linux (ARMv7).
  • Поддержка свежих дистрибутивов Linux (gcc-4.5, glibc-2.12).
  • Поддержка Mac OS X 10.6 (32- и 64-бит).
  • Поддержка инструкций SSE4.2.
  • Улучшения профилировщика Callgrind, включая поддержку CPU с тремя уровнями кеша.
  • Новый экспериментальный профилировщик кучи DHAT.
  • Большое количество исправлений ошибок и мелких улучшений.

Официальный сайт

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

 , , ,

GArik
()

Вышел LLVM 2.8

Группа Open Source

Спустя полгода активной разработки анонсирован выход версии 2.8 набора компиляторов LLVM , распространяемых по условиям BSD-подобной лицензии UIUC. Одновременно вышли и обновления подпроектов LLVM: компилятора C/C++ — Clang, модифицированной версии GCC 4.2.x (использует LLVM для генерации кода) — llvm-gcc, плагина для GCC 4.5 (и выше) — dragonegg.

Наиболее значимые изменения:

  • в основной проект вошел отладчик LLDB;
  • другим дополнением проекта стала замена libstdc++ — совместимая с C++0x стандартом библиотека libc++;
  • LLVM Machine Code (MC) — подсистема для поддержки ассемблирования, дизассемблирования и обработки бинарных форматов файлов (подробности в блоге);

    К сожалению, вышеперечисленные новшества реализованы в LLVM 2.8 только для платформ Mac OS X (x86 и x86-64).

  • llvm-diff для семантического сравнивания .ll-файлов.

В числе других изменений можно отметить:

  • оптимизация внутренних функций работы с памятью;
  • более эффективная отладка за счет генерации метаданных для отладчика в режиме реального времени;
  • более эффективная оптимизация циклов, вложенности функций (inlining), -loweratomic pass;
  • Clang теперь поддерживает ключи -momit-leaf-frame-pointer, -ffunction-sections, -fdata-sections;
  • значительно улучшен аллокатор регистров (особенно для -O0), возможен выбор алллокатора (в зависимости от ключа -O) при использовании ключа -regalloc=default, также будет задействованы SSE-регистры;
  • множество процессор-специфичных оптимизаций для платформ ARM и x86 (SSE, AVX, NEON).

Просмотреть полный список изменений (также по ссылке доступен и список нерешённых проблем выпуска).
Ознакомиться с материалами конференции разработчиков LLVM, прошедшей перед выпуском.
Загрузить source-tarballs.

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

 , , , ,

Sylvia
()

Interactive Disassembler Pro 6.0

Группа Проприетарное ПО

IDA Pro — это интерактивный дизассемблер и отладчик. Он позволяет превратить бинарный код программы в ассемблерный текст, который может быть применён для анализа работы программы.

Новая версия IDA Pro вышла 1 октября 2010 года. Основное изменение — графический интерфейс программы переписан с библиотеки VCL на Qt. Стоить отметить, что версия IDA Pro с псевдографическим интерфейсом для Linux и Mac OS X существует уже довольно давно. Также дизассемблер поддерживает запуск сервера отладки на Linux x86, x86-64, ARM, Mac OS X и отладку через gdbserver, gdbserver-интерфейс виртуальных машин Bochs, QEMU, VMWare.

Небольшое описание процесса портирования с VCL на Qt в течении 7 месяцев можно прочитать в блоге разработчика (Daniel Pistelli) нового интерфейса.

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

 , , ,

gloomdemon
()

Объявлен конкурс «Лучший свободный проект России – 2010»

Группа Open Source

Журнал Linux Format при поддержке компаний Intel, PingWin Software, IBM и ГНУ/Линуксцентр объявил начало второго ежегодного конкурса «Лучший свободный проект России — 2010». На этот раз в конкурсе могут принять участие не только существующие свободные проекты, разрабатываемые программистами из России и стран СНГ, а также, в новой, отдельной номинации «Осенний марафон» – свободные разработки, сделанные студентами в период проведения конкурса.

Добавить проект для участия в конкурсе могут как его участники, так и просто пользователи программного продукта.

Создатели проектов, победивших в конкурсе, будут награждены денежными премиями:

  • I место: 100 тысяч рублей;
  • II место: 80 тысяч рублей;
  • III место: 70 тысяч рублей.

Общий призовой фонд конкурса составляет 750 тысяч рублей.

Срок проведения конкурса: с 15 сентября до 15 ноября. Итоги конкурса будут подведены 15 декабря.

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

 ,

kda
()

Google сделал бесплатным ряд продуктов для Java-разработчиков

Группа Java

Google сделал бесплатным ряд продуктов для Java-разработчиков, производимых купленной в начале августа компанией Instantiations:

  • GWT Designer — основанная на Eclipse среда для разработки web-приложений с использованием Google Web Toolkit
  • CodePro Analytix — автоматический анализатор качества Java-кода
  • WindowBuilder Pro — средство для построения пользовательских интерфейсов для Swing, SWT, GWT, RCP и XWT
  • WindowTester Pro — средства для тестирования интерфейсов, построенных на базе Swing и SWT

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

 , , , ,

maxcom
()

Моделирование стохастических процессов на языке Perl

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

Часть 1. Матричные преобразования на Perl в решении прикладных задач
Первая статья серии «Моделирование стохастических процессов на языке Perl» является введением в язык данных Perl PDL (Perl Data Language) и содержит обзор основных классов матричных операторов, используемых в задачах моделирования стохастических процессов. Пакет PDL является зарегистрированным модулем архива CPAN (Comprehensive Perl Archive Network), который содержит свободные программные ресурсы, относящиеся к Perl.
Часть 2. Моделирование Марковских процессов на Perl
Вторая статья серии «Моделирование стохастических процессов на языке Perl» посвящена примерам практического использования дискретных цепей Маркова в ряде прикладных задач от создания модели физического процесса до экономического прогнозирования.
Часть 3. Использование модулей Perl для прогнозирование котировок рынка Forex (Марковская модель)
Третья статья серии «Моделирование стохастических процессов на языке Perl» посвящена созданию программ для вероятностного анализа и прогнозирования котировок рынка Forex, включая марковскую модель.

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

 ,

IBM_dW
()

GDB 7.2

Группа GNU's Not Unix

В новом релизе GNU Debugger:

  • добавлена поддержка для языка D;
  • расширена поддержка для C++ (поддержка ADL, операторов определяемых пользователем, статических константных членов класса);
  • улучшена поддержка Python (доступ к breakpoints, symbols, symbol tables, program spaces, inferiors, threads и frame's code blocks);
  • улучшения для точек трассировки (поддержка реконструкции после отсоединения, поддержка статических точек, поддержка в GDBServer);
  • поддержка новых платформ: ARM Symbian (arm-*-symbianelf*) и поддержка 64 битной Windows в GDBServer;
  • а также много других значимых улучшений, о которых можно прочитать в полном анонсе релиза.

>>> сайт проекта

 ,

Sylvia
()

Ruby 1.9.2

Группа Open Source

Ruby 1.9.2 по большей части совместим с 1.9.1 за исключением данных изменений:

  • Множество новых методов.
  • Новый socket API (с поддержкой IPv6).
  • Новые кодировки.
  • Класс Random, в котором доступны различные генераторы случайных чисел.
  • Переписан класс Time, устранена проблема 2038 года.
  • Некоторые улучшения в regexp'ах.
  • $: больше не включает текущую директорию.
  • dl переписан с использованием libffi.
  • Новая библиотека psych, являющаяся обёрткой libyaml, которую можно использовать вместо syck.

Новая версия проходит 99% тестов RubySpec.

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

 ,

Aesthete
()

GNU make 3.82

Группа GNU's Not Unix

Через 4 года от последнего релиза обновилась утилита make, управляющая сборкой и компоновкой обьектных, бинарных объектов, а также созданием другого рода файлов при сборке программных проектов.

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

  • анонсировано удаление функций сортировки по маске, рекомендуется пользоваться $(sort ...)
  • ввиду изменения в 2008 году стандарта POSIX , теперь требуется вызывать шелл с ключом -e , подобное может быть несовместимо с многими имеющимися makefile's и пока потребует указания переменных .POSIX или .SHELLFLAGS
  • переменная $? теперь содержит все предзависимости (даже те которых пока не существует), ранее переменная содержала только существующие цели.
  • расширены директивы парсера, анонсированы три возможные несовместимости: 1) предзависимость содержащая = больше не может заканчиваться обратным слешем, нужно создавать переменную с = и использовать ее в правилах для цели. 2) в именах переменных более недопустимы пробелы. 3) прямые цели (explicit target) и цели по шаблону (pattern target) теперь не могут сосуществовать в одном правиле сборки
  • правила для переменных и правил шаблонов теперь будут применяться по наиболее короткому пути, а не в порядке их определения. Определяется ключем shortest-stem в переменной .FEATURES
  • поиск библиотек теперь производиться также как его делает компоновщик (ранее для -lfoo просматривались libfoo.so в текущем каталоге, путях vpath и системных каталогах, потом производился поиск статической библиотеки по этим же путям, теперь один и тот же путь будет проверяться сначала на libfoo.so, а потом на libfoo.a)

из других изменений:

  • новый ключ командной строки --eval=STRING, идентичен директиве $(eval ...), будет обработан после определения правил и переменных по умолчанию, но перед обработкой любых makefile
  • новая специальная переменная .RECIPEPREFIX позволяет переопределить начало рецепта (recipe introduction) с табуляции (tab) на что-то другое
  • новая специальная переменная .SHELLFLAGS позволяет управлять вызовами шелла, по умолчанию это будет ключ -с или -ec, если установлена переменная .POSIX
  • новая специальная цель .ONESHELL укажет make вызвать шелл и вызвать команду сборки всего рецепта (recipe) вне зависимости от числа строк в нем. Для совместимости с POSIX шеллами контрольные символы «@», «+» и "-" будут отфильтрованы.
  • модификатор переменных private запретит наследование этой переменной в предзависимостях
  • директива undefine (для удаления переменной)
  • обработчик теперь будет воспринимать множественные модификаторы export, override, private на одной строке и в любом порядке, также можно создавать цели и переменные с такими именами
  • директива define теперь разрешает использовать оператор назначения переменной, что особенно облегчает работу с многострочными переменными
  • Исправлены многочисленные ошибки

>>> анонс на savannah.gnu.org

 ,

Sylvia
()

Конкурс Velcom Android Belarus

Группа Android

С 1 августа по 10 декабря 2010 года белорусская мобильная компания «Velcom» проводит конкурс среди разработчиков приложений для мобильных устройств с операционной системой Android. Целью Конкурса является стимулирование разработки бесплатных мобильных приложений, актуальных для Республики Беларусь, а также информирование общественности о доступности передовых услуг связи и повышения качества обслуживания.

Призы для победителей Конкурса:

  • первое место – 21 млн. бел. руб. (~7000$);
  • второе место – 15 млн. бел. руб. (~5000$);
  • третье место – 9 млн. бел. руб. (~3000$);
  • четвертое место (за 5 разных приложений) – 3 мобильных телефона HTC Hero и 2 мобильных телефона Sony Ericsson Xperia X10 mini.

Все разработчики должны быть совершеннолетними гражданами Республики Беларусь.

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

 ,

belgraviton
()

Clojure 1.2

Группа Java

После 8 месяцев напряжённой работы вышла новая версия языка Clojure — 1.2. Clojure — Lisp'образный язык общего назначения, работающий на платформах JVM и .Net и отличающийся более функциональным подходом и специальными средствами для упрощения разработки параллельного кода.

В новой версии очень много изменений, из которых особо стоит отметить следующие:

  • Введены протоколы (protocols) и типы данных (datatypes), позволяющие создавать новые абстракции и полиморфные функции. При этом производительность гораздо выше, чем при использовании мультиметодов;
  • Расширена деструктуризация структур данных, о которой я уже писал;
  • В составе языка введено несколько новых пространств имен, функции которых были перенесены из clojure-contrib. Сюда относятся функции для работы со строками, repl, pretty printer, ввод/вывод Java, и т.д.;
  • Расширен набор функций для работы с последовательностями;
  • Добавлена поддержка аннотаций Java, что позволяет использовать соответствующий функционал различных фреймворков;
  • Много изменений, связанных с улучшением производительности кода;
  • Для указания метаданных теперь вместо #^ используется просто ^.

Статья Введение в Clojure была частично обновлена описанием новых возможностей (кроме протоколов, которые будут чуть позже).

>>> Полный список изменений

 , , ,

ott
()

Вышел GAMBAS 2.21

Группа Open Source

GAMBAS — это открытая реализация популярного языка программирования BASIC для всех популярных операционных систем.

GAMBAS включает многие функции Visual BASIC, например он поддерживает объектно-ориентированную парадигму. Тем не менее, не является его (VB) клоном.

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

  • В gb.gtk исправлено управление событиями и устранены некоторые утечки памяти
  • Компонент SMTP теперь больше соответствует стандарту и должен быть удобен менее терпимым почтовым клиентам
  • Выполнены переводы на немецкий и чешский языки

Загрузить

>>> Список изменений

 , visual basic,

Lockywolf
()

Вышел дистрибутив компилятора Perl 6: Rakudo Star

Группа Open Source

Состоялся первый официальный выпуск компилятора Perl 6 Rakudo.
Rakudo Star - это полноценный дистрибутив Perl 6 достаточный для начала работы и включает в себя выпуск #31 компилятора Rakudo Perl 6 , Parrot Virtual Machine версии 2.6.0, дополнительные модули и документацию.

Rakudo Star доступен в виде исходных кодов(tar.gz) и сборки для Windows(msi)

Возможности Perl 6, включённые в первую версию Rakudo Star:

  • грамматика и регулярные выражения Perl 6;
  • списки и признаки формальных параметров (formal parameter lists and signatures);
  • метаоператоры;
  • постепенная типизация (gradual typing);
  • мощная объектная модель, включающая роли и классы;
  • отложенная интерпретация списков (lazy list evaluation);
  • множественный вызов (multiple dispatch);
  • умное сопоставление (smart matching);
  • соединения и автоматические потоки (junctions and autothreading);
  • перегрузка операторов (в данный момент не полностью реализовано);
  • рефлексия (introspection);
  • каррирование;
  • обширная библиотека встроенных операторов, функций и типов;
  • интерактивная командная оболочка;
  • поддержка Unicode (неполная);
  • возобновляемые исключения (resumable exceptions).

Неполный список модулей Perl 6, включённых в Rakudo Star:

  • Blizkost — позволяет использовать модули Perl 5;
  • MiniDBI — простой интерфейс к БД для Rakudo Perl 6;
  • Zavolaj — вызов библиотек C из Rakudo Perl 6;
  • SVG и SVG::Plot — создание SVG;
  • HTTP::Daemon — простой HTTP-сервер;
  • XML::Writer — запись XML;
  • YAML — вывод объектов Perl 6 как YAML;
  • Test::Mock — создание имитации объектов;
  • Math::Model — описание и исполнение математических моделей;
  • Config::INI — разбор и запись конфигурационных файлов;
  • File::Find — поиск файлов;
  • LWP::Simple — загрузка данных из Интернета.

В Rakudo Star отсутствуют следующие особенности Perl 6:

  • вложенное определение пакетов (nested package definitions);
  • двоичные объекты, «родные» типы, pack и unpack;
  • типизированные массивы;
  • макросы;
  • переменные состояния (state variables);
  • потоки и параллелизм;
  • предварительные и последующие ограничения (pre and post constraints, and some other phasers);
  • интерактивное чтение вводимых строк с поддержкой Unicode(readline);
  • управляющие последовательности символов в регулярных выражениях (backslash escapes in regex <[...]> character classes);
  • неблокирующий ввод/вывод;
  • значительная часть Synopsis 9;
  • утилиты манипуляции документацией perl6doc (pod).

Rakudo Star также содержит черновик книги о Perl 6.

>>> Анонс

 , , , ,

grim
()

Google дал оценку Java и C++

Группа Java

Один из ведущих инженеров Google — Роб Пайк (Rob Pike) — выступил на конференции O'Reilly Open Source Convention (OSCON) и выразил мнение корпорации о современных языках разработки и месте C++ и Java в них. Он отозвался об этих индустриальных китах очень негативно, назвав их многословными, чрезмерно сложными и неадекватными к применению в решении задач современной компьютерной инфраструктуры.
«Я думаю, что эти языки слишком сложны для использования, слишком трудны для понимания, слишком замысловаты. Они очень многословны, их сложность, громоздкость и непонятность возрастают со временем», — заявил Роб.

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

 , , ,

Karapuz
()

CodeLite 2.6.0

Группа Open Source

Увидело свет очередное обновление CodeLite под номером 2.6.0.4189.

CodeLite — полностью свободная, кроссплатформенная интегрированная среда разработки для C++, которая собирается и тестируется в Windows XP/Vista, Linux (доступны сборки для Ubuntu, Fedora, openSUSE) и Mac OS X. CodeLite распространяется под лицензией GPLv2 с исключением: дополнения, разрабатываемые для CodeLite, могут распространяться под любой лицензией.

Стоит отметить, что CodeLite разработана с использованием библиотеки wxWidgets и оптимизирована для разработки при помощи этой библиотеки.

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

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

Главная страница проекта CodeLite

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

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

 , ,

Genuine
()

Релиз SQLite 3.7.0

Группа Open Source

SQLite — бессерверная СУБД, не требующая конфигурирования и распространяющаяся под лицензией public domain.

В новой версии были добавлены:

  • Поддержка логирования перед записью (WAL), позволяющая несколько ускорить обработку запросов к БД в большинстве случаев
  • Расширение планировщика запросов для автоматического фонового построения индексов БД, что также позволяет сократить время на обработку запроса
  • Директива ORDER BY при указанной директиве GROUP BY теперь не будет иметь значения (noop)
  • Добавлен код возврата SQLITE_DBSTATUS_CACHE_USED для функции статуса sqlite3_db_status()
  • Логический размер БД теперь будет сохраняться в заголовке, что позволит корректно работать в системах, где отсутствует ftruncate()

Новая версия рекомендуется для разработчиков и новых установок.

>>> Анонс

 embedded sql, , , ,

Sylvia
()

Выпущена Scala 2.8.0

Группа Java

После выпуска 7 релиз-кандидатов увидела свет финальная версия реализации гибридного языка программирования для платформ Java и .Net Scala 2.8.0.

Версия 2.8.0 по сравнению с предыдущими содержит следующие изменения:

  • Переработанная библиотека коллекций. Подробности
  • Новая реализация массивов. Подробности
  • Специализация типов. Подробности
  • Именованые аргументы и аргументы по умолчанию. Подробности
  • Объекты пакетов. Теперь пакеты могут содержать не только классы и объекты, но и функции, переменные и алиасы типов.
  • Дополнена библиотека Scala Swing, улучшена документация
  • Переработан REPL. Основным нововведением является автодополнение по Tab.
  • Изменения в алгоритме поиска неявных аргументов.
  • Новая библиотека комбинаторов парсеров. Теперь поддерживаются грамматики с левой рекурсией.
  • Улучшения в библиотеке обработки XML.
  • Улучшения в процедуре вывода типов.
  • Улучшения аннотаций. Подробности
  • Улучшения в реализации актёров.
  • Поддержка продолжений (continuations). Продолжения поддерживаются плагином компилятора.
  • Множество исправлений. Подробности

Также выпущены новые версии сопутствующих инструментов: scaladoc 2, sbaz 2, scalap, Scala-плагин для Eclipse.

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

 , , ,

Zenom
()

Python 2.7

Группа Open Source

3 июля 2010 вышло обновление Python 2.x, в котором были добавлены возможности, ранее присутствовавшие только в ветке 3.x, а также другие улучшения:

  • Новый тип — упорядоченный словарь
  • unittest обзавелся новыми методами assert и может пропускать (по требованию, естественно) тесты
  • значительно ускорена работа модуля IO
  • автоматическая нумерация полей в методе str.format()
  • Улучшения представления repr для типа float, как в Python 3
  • Поддержка Tile для TkInter
  • Объект memoryview портирован обратно из Python 3
  • литералы для множеств ({a, b, c})
  • comprehensions для множеств и словарей
  • Dictionary views — способ представления фрагмента словаря без копирования
  • Новый синтаксис для вложенных операторов with
  • Новый модуль sysconfig

>>> Анонс релиза на оф. сайте и загрузка

 ,

Sylvia
()

Релиз libjpeg-turbo 1.0.0

Группа Open Source

libjpeg-turbo - альтернативная IJG библиотека для чтения, записи и обработки изображений стандарта JPEG, использующая MMX и SIMD для оптимизации скорости на платформах x86 и x86-64; библиотека совместима по API и ABI с стандартной libjpeg 6b и может быть установлена вместо обычной дистрибутивной libjpeg для получения 50% и более выигрыша в производительности обработки JPEG изображений.

Библиотека поставляется под GPL-совместимой лицензией wxwidgets и была адаптирована Fedora для включения в Fedora 14 в качестве системной библиотеки libjpeg

Для желающих попробовать доступны как исходники, так и бинарные пакеты для linux x86 и x86-64 в .deb , .rpm , а также версии для MacOSX и MS Windows, скачать можно тут

>>> сайт проекта

 ,

Sylvia
()