Регистрация | Войти
Lisp — программируемый язык программирования
RSS
David Lichteblau рекомендует ORM для Common Lisp: cl-perec
archimag - 13.08.2009 01:25, Сообщений - 5
Известный лисп-хакер David Lichteblau написал в своём блоге интересное сообщение, в котором рассказал об (очень) успешном переводе своего кода с CLSQL (проблемы с которой широкоизвестны) на новую ORM для Common Lisp: cl-pereccl-perec развивается тихо и без рекламы, это первое сообщение, которое мне попалось про описываемую систему.

P.S. Я создал планету, посвящённую ORM для Common Lisp: http://wishfeeds.com/archimag/common-lisp-orms/, пока там только один блог (про cl-perec), если знаете ещё блоги на  эту тематику (фильтрация по тэгу не проблема) - пишите, буду добавлять.
[#]
cl-perec - жуть. Во-первых, надо брать кучу пакетов из транков, потому как со стабильными релизами он не работает. Помогает clbuild. Во-вторых, глючноват и отсутствует документация (почти). Но в целом концепция приятная, и если потратить время на освоение и подставление костылей, то использовать можно.
Valera - 13.10.2009 00:06
[#]
> Во-первых, надо брать кучу пакетов из транков, потому как со стабильными релизами он не работает.

Это нормально. Учитывая текущее состояние многих lisp-проектов, по другому сейчас делать трудно. Это не проблема cl-perec.

> отсутствует документация

А где она есть? Это тоже на сегодняшний день нормально :) есть исходники...
archimag - 13.10.2009 11:27
[#]
Главное чтобы не слишком много костылей надо было. Чтобы не получилось так, что проще макросы к CLSQL написать.
LinkFly - 05.04.2010 00:49
[#]
>CLSQL (проблемы с которой широкоизвестны)

А какие у него проблемы?
Jax - 13.04.2010 23:47
[#] Ответ на комментарий от Jax 13.04.2010 23:47

CLSQL тормозит.

А в CL-PEREC основная проблема: всё есть транзакция. Соответственно вся логика или на продолжениях (изнутри транзакций) или приходится на каждый объект PEREC делать свой нормальный класс, куда копировать данные. + (slot-value object 'slot) почему-то вытаскивает все поля из таблицы, а не только нужный слот (хотя может скорость от этого не падает, а остальные поля можно закэшировать).

Хочу ORM, позволяющий делать что-то вроде (name (manager (car (employeers-of company)))). И не заставляющий заворачивать каждый defun в with-transaction.

kalimehtar - 26.09.2010 01:03
@2009-2013 lisper.ru