git404hub

what is bacwn fr?

whilo/bacwn — explained in plain English

Analysis updated 2026-07-18 · repo last pushed 2013-08-29

ClojureAudience · developerComplexity · 3/5DormantSetup · moderate

tl;dr

A Clojure library that brings Datalog, a declarative query language like SQL, but for in-memory data, to Clojure and ClojureScript apps.

vibe map

mindmap
  root((repo))
    What it does
      Datalog queries
      Declarative rules
      Pattern matching
    Tech stack
      Clojure
      ClojureScript
      Datalog
    Use cases
      Query nested data
      Logical reasoning
      Recommendation matching
    Audience
      Clojure developers
      Backend engineers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Query complex nested Clojure data structures declaratively instead of writing loops and conditionals.

VIBE 2

Implement logical reasoning over facts and rules, like matching projects to reviewers with the right expertise.

VIBE 3

Build a recommendation engine that matches customer preferences against available products.

VIBE 4

Search in-memory datasets for patterns the way you'd use SQL against a database.

what's the stack?

ClojureClojureScriptDatalog

how it stacks up fr

whilo/bacwnbenfleis/throttlergardnervickers/local-meetups
LanguageClojureClojureClojure
Last pushed2013-08-292015-01-282016-02-04
MaintenanceDormantDormantDormant
Setup difficultymoderateeasyhard
Complexity3/52/54/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · moderate time til it works · 30min

Alpha-stage library, the ClojureScript version doesn't fully work yet and the API may still change.

prompts (copy fr)

prompt 1
Show me how to write a basic Datalog query with Bacwn to filter a Clojure data structure.
prompt 2
Help me convert a nested loop with conditionals in my Clojure app into a Bacwn Datalog query.
prompt 3
Explain the difference between using Bacwn in Clojure versus ClojureScript, including current limitations.
prompt 4
Walk me through defining rules in Bacwn to match records based on relationships between them.

Frequently asked questions

what is bacwn fr?

A Clojure library that brings Datalog, a declarative query language like SQL, but for in-memory data, to Clojure and ClojureScript apps.

What language is bacwn written in?

Mainly Clojure. The stack also includes Clojure, ClojureScript, Datalog.

Is bacwn actively maintained?

Dormant — no commits in 2+ years (last push 2013-08-29).

How hard is bacwn to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is bacwn for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.