Starting on goal: Prolog$Goal(car=l("[]", "say", Prolog$Var(id=0L, instance=r3))) Goal arity 2: "[]"(say, $x) nextSolution Goal: "[]"(say, $x). Got clause: "[]"(say, "[]"(_1, is, tasty, "!")) :- "[]"(user, says, "[]"(what, is, tasty)); "[]"(_1, is, tasty) Clause unifies to: "[]"(say, "[]"(_1, is, tasty, "!")) :- "[]"(user, says, "[]"(what, is, tasty)); "[]"(_1, is, tasty) gdash: "[]"(user, says, "[]"(what, is, tasty)); "[]"(_1, is, tasty) Goal arity 3: "[]"(user, says, "[]"(what, is, tasty)) New goal: "[]"(user, says, "[]"(what, is, tasty)); "[]"(_1, is, tasty) Goal: "[]"(user, says, "[]"(what, is, tasty)); "[]"(_1, is, tasty). Got clause: "[]"(user, says, "[]"(what, is, tasty)) Clause unifies to: "[]"(user, says, "[]"(what, is, tasty)) gdash: "[]"(_1, is, tasty) Goal arity 3: "[]"(_1, is, tasty) New goal: "[]"(_1, is, tasty) Goal: "[]"(_1, is, tasty). Got clause: "[]"(lasagna, is, tasty) Clause unifies to: "[]"(lasagna, is, tasty) gdash: null SUCCESS! solution found in step 7 nextSolution Goal: "[]"(_1, is, tasty). Got clause: "[]"("[]"(ice, cream), is, tasty) Clause unifies to: "[]"("[]"(ice, cream), is, tasty) gdash: null SUCCESS! solution found in step 1 nextSolution Done with goal! No solution nextSolution Done with goal! No solution