CQL — это open-source инструмент для работы с базами данных на основе теории категорий. Он умеет делать запросы, объединять данные, мигрировать схемы и эволюционировать БД — и всё через математику, которая перевернула несколько разделов computer science.
CQL готов к продакшену на одном узле — обрабатывает данные в памяти, отлично подходит для интеграции под data science. Коммерциализацией занимается Conexus AI, контакт — Ryan Wisnesky.
Что внутри: гибкий ввод-вывод через JDBC-SQL, CSV и другие форматы. Схемы и сами базы можно визуализировать графически. Ограничения целостности данных — богатые: не только сущности, атрибуты и внешние ключи, но и уравнения между ними. Уравнения позволяют делать денормализацию без ручной синхронизации избыточных данных.
Схемы могут быть вычислительными — пользовательские функции встраиваются прямо в описание схемы, их можно писать на Java или JavaScript (или чисто уравнительно). Теорема CQL умеет доказывать свойства этих функций и их связь с ограничениями целостности.
Принципиальнее, чем SQL: реляционные концепции, вроде внешних ключей, появляются в CQL в более строгой форме. И CQL даёт примитивы, которых в SQL вообще нет.
Всё на 100% Java, пользовательские функции тоже на Java или JavaScript. Глубокая встраиваемая реализация CQL в Haskell (совместно с Statebox) в разработке.
Важный нюанс: CQL — stateless. Это не СУБД, он не хранит и не обновляет данные. Это функциональный язык программирования со своей IDE, его масштабируемость похожа на SQL и chase-движки.
В основе — Kan extensions, Silmarils (отсылка к алмазам из книг Толкина, тут метафора) и прикладная теория категорий. CQL — эталонная реализация ologs (ontology logs) от Дэвида Спивака.
Отдельно упомянут магазин Sigma Delta Pi Schwag Store — видимо, мерч проекта.