Commits on May 17, 2013
  1. fix bug in `nafc` implementation. We must force scheduling thunks to

    swannodette committed May 17, 2013
    determine if we have a real answer - unit, choice, or mzero. add test
    cases illustrating membero and a negated membero.
Commits on May 16, 2013
  1. cleanup tests

    swannodette committed May 16, 2013
Commits on May 11, 2013
  1. bump cljs

    swannodette committed May 11, 2013
  2. update readme

    swannodette committed May 11, 2013
Commits on May 10, 2013
  1. ammend `conso` docstring

    swannodette committed May 10, 2013
Commits on May 9, 2013
  1. `membero` disequality change significantly slowed down its

    swannodette committed May 9, 2013
    performance. Instead revert `membero` and provide a new goal
    `member1o` that uses disequality.
Commits on May 8, 2013
  1. Update membero to use disequality constraints. This can break code th…

    austinhaas committed with swannodette May 7, 2013
    …at depends upon what is considered a flaw in the previous version.
    Before: (run* [q] (membero q [1 1 1])) ;; => '(1 1 1)
     After: (run* [q] (membero q [1 1 1])) ;; => '(1)
Commits on May 6, 2013
  1. update pom.xml

    swannodette committed May 6, 2013
  2. bump nrepl

    swannodette committed May 6, 2013
  3. LOGIC-132: "PMap is non-storable" exception when using featurec with

    swannodette committed May 6, 2013
    nested feature map.
    The recursive `featurec` support was a bit naive. `unify-with-pmap*`
    nows handles the various cases properly.
Commits on Apr 22, 2013
  1. Merged

    swannodette committed Apr 22, 2013
  2. add JaCoP sudoku example

    swannodette committed Apr 22, 2013
Commits on Apr 20, 2013
  1. document perf improvements. Approaching 0.8.0 alpha performance on

    swannodette committed Apr 20, 2013
    sudoku if we avoid distribution step for the easy ones.
Commits on Apr 19, 2013
  1. refactor constraints to use IConstraintStep, this way we can avoid

    swannodette committed Apr 19, 2013
    unnecessary calls to `get-dom` while retaining the flexibility to call
    `-runnable?`, `-entailed?`, and constraint invocation in whatever
    order we please.
    refactor protocols to use ClojureScript style naming convention - this
    is prep for eventual unification of the two code bases.
Commits on Apr 10, 2013
  1. Fixed LOGIC-127, nom swapping now preserves vectors and maps

    jirkamarsik committed with namin Apr 3, 2013
    Signed-off-by: amin <>
Commits on Apr 9, 2013
  1. fix bug from Zurich talk, simple equation example could not have the

    swannodette committed Apr 9, 2013
    fd/in expression come last because of a bug in domc.
Commits on Apr 4, 2013
  1. domain? as currently used unnecessary. let-dom always returns nil when

    swannodette committed Apr 4, 2013
    a var has no domain. simplify.
Commits on Mar 31, 2013
  1. change iterations

    swannodette committed Mar 31, 2013
Commits on Mar 29, 2013
  1. [maven-release-plugin] prepare for next development iteration

    Hudson @ committed Mar 29, 2013
  2. [maven-release-plugin] prepare release core.logic-0.8.3

    Hudson @ committed Mar 29, 2013
  3. 0.8.3

    swannodette committed Mar 29, 2013
  4. LOGIC-126: bad fd/* fd/+ from StackOverflow

    swannodette committed Mar 29, 2013
    The issue is that it's possible for a var to have both a value and
    domain. Previously get-dom *always* returned the domain, this
    permitted an the undesirable situation that constraints checked against
    the domain and not the actual value.
    Now the fundamental get-dom always return the value if the var has one
    over the domain (it continues to return nil in the unfound case, which
    will likely change). After auditing the fd code it's clear that the
    primary use of get-dom was the desire to get the actual value or the
    domain. The only place where we don't do this is domc. domc has to
    reach into the implementation. This is OK for now, I'd like to see
    how CLP(Set) and other constraint domains play out.
    We tweaked resolve-storable-dom in the singleton case. We only run
    constraints if the var doesn't have a binding (we wouldn't have made
    it this far if it had). This prevents I believe the bad behavior we
    seen in the past when flipping walk/get-dom in let-dom.
    let-dom now just uses get-dom, no separate walk. Added note in
    distintc why we need both get-dom and walk there.
    Overall we're getting closer, but I think further simplifications and
    improvment can be made.
Commits on Mar 26, 2013
  1. tweak

    swannodette committed Mar 26, 2013
  2. [maven-release-plugin] prepare for next development iteration

    Hudson @ committed Mar 26, 2013
  3. [maven-release-plugin] prepare release core.logic-0.8.2

    Hudson @ committed Mar 26, 2013
  4. 0.8.2

    swannodette committed Mar 26, 2013
Commits on Mar 24, 2013
  1. remove stale comments

    swannodette committed Mar 24, 2013