On Tue, Jun 20, 2006 at 11:46:16AM +0300, Led wrote: > В сообщении от 20 июня 2006 05:02 Alexey Tourbin написал(a): > > On Tue, Jun 20, 2006 at 05:15:00AM +0400, Dmitry V. Levin wrote: > > > Что касается более сложной обработки, то тут надо вспомнить математику и > > > хорошенько подумать. > > > > Ну в общем да. Нужно осилить топологию и теорию графов. Потом нужно > > переписать apt на ocaml'е. :) Сейчас к апту очень серьезная претензия: > > библиотека libapt-pkg не дает доступа к основным алгоритмам. То есть > > например алгоритм 'apt-get --print-uris install' закоден непосредственно > > в apt-get. Чтобы попробовать узнать, можно установить отдельно взятый > > пакет или нет, приходится запускать apt-get и парсить его вывод. > > Каждый такой запуск стоит порядка секунды, а большая часть времени > > уходит на чтение/инициализацию кеша. То есть нельзя достаточно быстро > > проверить, какие пакеты в сизифе устанавливаемы, а какие нет. Нельзя > > загрузить кеш один раз и проверить все пакеты в пределах одного > > процесса. > > А разве apt-shell не так делает? Это несколько облегчает, но не отменяют проблему. Нативные байндинги к перлу сделать нельзя. А при наличии нативных байндингов можно делать нетривиальные вещи. Вообще перл можно рассматривать как интерпретатор Си, amorozov когда-то об этом писал.