Sat Feb 23 19:28:50 CET 2013


Trying out racklog.

(%which (x)
   (%= (list x 1) '(0 1)))

The problem I have is evaluating a number of constraints over a set of
nodes.  So what I have is a list of:

(nodes, node-predicate)

The outcome should be a binding of all the nodes to the values
mentioned in the predicates through %==.

The problem I have seems to be a level problem:
- I have a list of nodes, and a list of predicates (or meta: functions that generate predicates).
- The which form takes identifier syntax, not nodes

Does this need eval or a macro?

In other words: the number of variables in my query is problem-dependent.

[1] http://docs.racket-lang.org/racklog/unification.html