понедельник, 13 октября 2008 г.

cl-libxml2

В предыдущем сообщении я рассказал об идеи сервера-приложений, которая меня уже давно привлекает и над зачатками которой я уже успел поработать. Но после окончательной кристаллизации идеи выявилась проблема - я не хочу писать это на Python. Не то, чтобы я имел что-то против Python, очень хороший, милый такой язык :-), но не восхищает. Я не получаю такого удовольствия от программирования на Python, как от программирования на Common Lisp. Меня давно подмывало реализовать эту идею на CL, но тут выходит на сцену относительная малочисленность lisp-разработчиков и некоторый недостаток библиотек.

В данном случае, речь идёт о недоступности полноценного решения для работы с XML. Да, cxml, вкупе с cxml-stp - отличная библиотека, но там не реализовано критически важная для меня поддержка XSLT. В принципе, близка к первому релизу Xuriella XSLT (основанная на cxml), но, как мне сообщил один из разработчиков, с производительностью у этой библиотеки пока беда... Это, вероятно, поправимо, но со временем, причем, не вполне определённым. Вообще, мне представляется довольно странным, что в открытом доступе нет обёрток для libxml2. Мне кажется, что есть некоторая нелюбовь lisp-хакеров к написанию оберток над библиотеками, написанными на других языках, возможно некоторым это кажется унизительным :-)

В общем, отчаявшись найти устраивающее меня решение для работы с xml я наконец решился начать делать самому cl-libxml2. В основу я положил CFFI, а в дизайне ориентируюсь на cxml-stp, за тем исключением (весьма существенным), что для обработки списков (элементов, атрибутов и т.д.) будут использоваться решения на базе iterate.

Комментариев нет:

Отправить комментарий