понедельник, 28 июля 2014 г.

ICFPC-2014 over

Этот трёхдневный марафон под названием ICFPC-2014 закончился. В этом году участвовал в команде из 4-х человек под названием "Skobochka". Было весело. Подробности отпишу позже, как отосплюсь, а пока смотрите наши исходники.

вторник, 8 мая 2012 г.

enhanced-thread-pool

Недавно тут понадобилась библиотека для пула потоков. Тогда нашёл было thread-pool. Но оказалось, что если положить в его очередь задания пока заняты работающие нити, то он не начнёт обрабатывать её как какой-нибудь поток освободится. Поэтому набросал свою библиотеку для пула потоков. В принципе, возможно, как я потом изучил, для моих задач бы хватило pcall или eager-future, но к этому времени основную функциональность я уже дописал. Дополнительно библиотека позволяет создавать временные дополнительные нити и использовать их при повышающихся нагрузках и освобождать их при понижении нагрузок. В общем, просьба знающих людей посмотреть и высказать своё мнение. В том числе и то, что можно и лучше использовать вместо этого.

пятница, 22 июля 2011 г.

SBCL 1.0.50

Обновление SBCL 1.0.50 в lisp-репизотрии для Ubuntu и Debian. Также обновлены slime (состояние на 22.07.2011) и добавлены пакеты chipz и salza2.

среда, 8 июня 2011 г.

SBCL 1.0.49

Обновление SBCL 1.0.49 в lisp-репизотрии для Ubuntu и Debian. Также обновлены slime (состояние на 08.06.2011) и asdf (2.016).

воскресенье, 22 мая 2011 г.

Сетевой прокси редиректор CLANPER (прототип)

Существует такая программка, которая называется rinetd. Смысл её заключается в том, чтобы как-то "легко пробрасывать порты". Я даже пытался её использовать на одном сервере, но через некоторое время она начинала грузить процессор на полную, да и не работала при этом. Гугление ни к чему хорошему не привело, поэтому я просто решил потестить iolib и сделать свой порт редиректор. Собственно, что-то получилось. Конечно, сам код далёк от совершенства, но я его уже запустил у себя на том сервере вместо rientd. Пока полёт нормальный.

Полученное на данный момент решение обладает рядом недостатков:

  • не ведётся лог;
  • не работает с udp портами;
  • не реализованы ACL;
  • ну и стандартная проблема для такого рода редиректоров, которая не может быть решена - сервер, куда редиректятся запросы, не может определить IP клиента, потому что IP будет сервер, с которого редиректятся запросы.

Исходные коды.

суббота, 21 мая 2011 г.

SBCL 1.0.48 и остальные

Обновление SBCL 1.0.48 в lisp-репизотрии для Ubuntu и Debian. Также обновлены slime (состояние ня 19.05.2011), asdf (2.015.3), а также добавлен buildapp версии 1.2. В отличие от "родного" debian пакета, который сразу поставляется в бинарном платформозависимом виде, данная сборка поставляется для всех платформ, где будет установлен sbcl. А компиляция происходит при установке, а также при обновлении самого sbcl.

суббота, 2 апреля 2011 г.

Обновление REPO от 31.03.2011

В lisp-репизотрии для Ubuntu и Debian очередное обновление:

  • xcl - очередная реалзация языка Common Lisp с компиляцией в нативный код;
  • asdf - версия 2.014.2.