Проект: Framework для web-приложений на Haskell

Разрабатываю вот такую вещь.
Это фреймворк для создания web-приложений на языке Haskell. Проект в стадии активной разработки.

Состоит фреймворк из следующих частей:

  • HTTP сервер (т.е. приложение на этом фреймворке будет общаться с внешним миром по HTTP, "апач не нужен", хотя для отдачи статики или управления виртуальными хостами имеет смысл поставить nginx/lighthttpd)
  • Модуль для работы с Cookies
  • Модуль для работы с пользовательскими сессиями (в настоящий момент, данные сессий хранятся в файлах, но можно написать другой backend)
  • Модуль для кэширования чего угодно (бэкенды - filesystem, memcached и fake)
  • URL dispatcher
  • Модуль для работы с БД (использует HDBC, в настоящий момент полноценно работает только с PostgreSQL, sqlite3 поддерживает не все запросы, бэкенд MySQL есть, но не протестирован)
  • EDSL для описания моделей данных (таблиц БД)
  • EDSL для формирования SQL-запросов по моделям данных
  • Templating Engine - шаблоны пишутся в отдельных файлах с синтаксисом a la Django, но при сборке приложения компилируются в результирующий бинарник
  • Подсистема обработки форм (генерация HTML формы по объекту, валидация форм, показ недозаполненной формы)

В директории Blog/ - тестовое приложение ("типо блог"), не надо предъявлять к его функционалу претензий, его задача - протестировать работу фреймворка.

Depends on cabal packages: hdbc, hdbc-mysql, hdbc-postgresql, hdbc-sqlite3, haskell-memcached, network, http, MissingH, Takusen, hgettext, data-hash. Компилируется ghc 6.10.

Текущая версия README.ru
Документация (haddock)
Страничка проекта
Git репозиторий: git://lug-mgn.ru/framework.git, он же через web

Предложения/пожелания/багрепорты/etc приветствуются. Хотелось бы также найти желающих поучаствовать в разработке (самого фреймворка или хотя бы приложений на нём - чтобы выявить места, над которыми требуется работа). Для этого не обязательно быть профессионалом в Haskell: я сам ещё даже не newbie (в смысле, ещё не написал свой monad tutorial) Eye-wink Зато это, имхо, может быть познавательно: у меня используются чуть ли не все "фишки" современного haskell-а Smiling
28.07.2009 - 18:02
Спасибо за работу, занёс в закладки, в свободное время посмотрю что можно на нём сделать.
RSS-материал RSS-материал