Julian Andres Klode опубликовал (http://juliank.wordpress.com/2009/12/13/apt2-progress-report.../) в своем блоге заметку, описывающую последние достижения в разработке пакетного менеджера APT2, работа над которым началась (http://www.opennet.me/opennews/art.shtml?num=23176) в августе. В настоящий момент созданы:
- Базовая библиотека функций libapt для управления пакетами и работы с репозиториями, поверх которой организована работа стандартных сервисных утилит;- Фронт-энд capt для управления в режиме командной строки. В настоящий момент утилита capt поддерживает команды: "config dump", "config get опция", "config set опция", "search выражение", "show пакет" и "sources list".
- Бэкенд для хранения мета-данных в БД SQLite. Предварительное тестирование показало что начальная реализиация APT2 с хранением мета-данных в SQLite выполняет операции поиска в 8 раз быстрее, чем aptitude и в три раза быстрее apt-cache.
Первый тестовый релиз плани...URL: http://juliank.wordpress.com/2009/12/13/apt2-progress-report.../
Новость: http://www.opennet.me/opennews/art.shtml?num=24680
Во, это выглядит вменяемо и обещаюше. И код на Vala транслируется в сишный, так что есть надежды что оно по скорости и жрачу ресурсов будет вполне цивильно себя вести, в отличие от уродцев типа yum, эпично фэйлящих на машинах с 128 мегами памяти (виртуалки, etc) после выжирона всей памяти.
Да, Vala по тестам действительно быстрым получился:
http://code.google.com/p/vala-benchmarks/wiki/BenchResults
В некоторых тестах даже c++ обгоняет. Однако это все синтетические тесты, посмотрим, как будет в реальных приложениях.
Другое дело, что трансляция в сишный код уже давно существует в языках M2 (http://www.icosaedro.it/m2/), Eiffel (www.eiffel.com), непонятно тогда, зачем Vala вообще изобретали.
А по функциям и скорости действительно многообещающий пакетный менеджер получается.
На сайте вала чётко всё описано зачем его изобрели. Для того чтобы удобно было писать на gobject. Раньше все С++ники кричали что C+gobject это нечто нереальное. Теперь вот с появлением валы - весь рантайм gobject прикрыт красивым синтаксическим сахаром в стиле C#. По скорости вала такая же как С+glib+gtk, при обильном использование gobject.
>непонятно тогда, зачем Vala вообще изобретали.Чтобы GObject boilerplate не писать тыщу раз
> В некоторых тестах даже c++ обгоняет.И даже каким-то чудом - си :). Видимо компилер в этом случае сгенерил из генеренного исходника более удачный код. За бенчи спасибо. Там правда еще явы не хватает. Чтобы тут некоторые наконец угомонились. А так понятно что скорсть этого в большинстве случаев будет "как у си за вычетом небольшого оверхеда в некоторых случаях".
Что до существования - на Vala я видел, пардон, реальные программы :). Про существование оной я узнал когда наткнулся на вполне реальную, работающую и адекватную программу. Про упомянутые слышу впервые. Первый показался каким-то гибридом паскаля, васика и сей. Сами таким пользуйтесь, а мне нравится си-подобный синтаксис. Второй сайт - вообще какой-то коммерческой конторы. Не очень понял в чем прикол.
>Первый показался каким-то гибридом паскаля, васика и сей. Сами таким пользуйтесь, а мне нравится си-подобный синтаксис.Извините, не знал, что Вы так негативно относитесь к паскалеподобному синтаксису.
>Второй сайт - вообще какой-то коммерческой конторы.Там двойная лицензия, как у старого Qt (для коммерческого пользования - платно, для GPL проектов есть версия под GPL лицензией). Скачать можно тут: http://sourceforge.net/projects/eiffelstudio/files/, http://dev.eiffel.com/Main_Page
>на Vala я видел, пардон, реальные программы
>наткнулся на вполне реальную, работающую и адекватную программуСсылками не поделитесь?
>[оверквотинг удален]
>Извините, не знал, что Вы так негативно относитесь к паскалеподобному синтаксису.
>>Второй сайт - вообще какой-то коммерческой конторы.
>
>Там двойная лицензия, как у старого Qt (для коммерческого пользования - платно,
>для GPL проектов есть версия под GPL лицензией). Скачать можно тут:
>http://sourceforge.net/projects/eiffelstudio/files/, http://dev.eiffel.com/Main_Page
>>на Vala я видел, пардон, реальные программы
>>наткнулся на вполне реальную, работающую и адекватную программу
>
>Ссылками не поделитесь?На сайте валы есть, ЕМНИП
>И код на Vala транслируется в сишный, так что есть надежды что оно по скорости и жрачу ресурсов будет вполне цивильно себя вестиКод на яве тоже транслируется в сишный. Если этого достаточно, чтобы убедить вас в том, что ява быстрый :)
З.Ы. А еще код на яве транслируется в машинный - там скорость ну ващеее!
>З.Ы. А еще код на яве транслируется в машинный - там скорость ну ващеее!Сюрприз в том что он и у си транслируется в машинный код, знаете ли. Процессор ничего кроме машинного кода выполнять не умеет, прикиньте? А еще сишному компилеру можно подыграть - аккуратно оптимизнутыми вставками на асме в критичных кусках... :D. При этом - не хочу ничего сказать но чисто-сишная версия кодеков сливает си+асм вставки чуть ли не в разы. Потому что компилер местами генерит не особо симпатичный код и человек может его сделать буквально в разы, улучшив чуток кода в критичных местах.
А отсутствие зиллиона рантайм проверок в узких местах у сей может в тугих циклах натянуть яву по скорости в какие-то там жалкие... разы. Пруфлинка = http://www.quicklz.com/ где ява сливает в свои честные 2.5 - 3 раза в алгоритме где "все для скорости". Ну, как и должна.
Вывод: жабисты как всегда - бухтят о производительности. Ну а о том что такое машинный код - имеют весьма смутное представление.
И мой вывод: детектор сарказма у вас не работает. Отправьте багрепорт майнтейнеру.
так погодите ка? А что же тогда было на perl написано?А, вот оно: http://www.opennet.me/opennews/art.shtml?num=23577 а я уж думал , что это они всётаки с пера переписали на си? )
cupt - это детище Евгения Любимкина.
Вот теперь кто бы ещё пояснил разницу между cupt и apt2 кроме как в языке программирования.
Это просто разные проекты. apt2 станет официальным менеджером пакетов, а cupt - неофициальная разработка, типа wijig и сомпания. Возможно, конечно, после полной реализации cupt будет переписан на более быстром компилируемом языке.
> выполняет операции поиска в 8 раз быстрее, чем aptitude и в три раза быстрее apt-cache... и впятеро медленнее, чем grep
греп - как-то не кошерно, чтоли...
grep там не ищет
>Код проекта написан на языке Vala.Одни пилят на Перле, другие - на Вале. Что дальше - Лисп? Хаскель? Брейнфак?
Лишь бы выпендриться.
При желании, код vala и perl очень легко смешивается, как например писать на perl+gtk.
Так что вполне совместимо и хорошо, если будет смысл юзать код друг друга - заюзают без проблем.
Ну и голы у проектов несколько разные, а вам жалко?:D
>Лишь бы выпендриться.Да, есть такая тенденция.