Brandon T. Willard
Brandon T. Willard
We need a documentation section that illustrates how to debug `kanren` goals and meta object unification (i.e. `kanren.core.dbgo`, and `unification.debug_unify`), as well as how to inspect graphs (i.e. `theano.printing.debugprint` and...
As a convenience, we should provide meta tensor implementations of the following: `__add__`, `__radd__`, `__sub__`, `__rsub__`, `__mul__`, `__rmul__`, `__div__`, `__rdiv__`, `__truediv__`, `__rtruediv__`, `__floordiv__`, `__rfloordiv__`, `__mod__`, `__rmod__`, `__lt__`, `__le__`, `__gt__`, `__ge__`,...
Per [this discussion](https://github.com/hylang/hydiomatic/pull/13#issuecomment-428833370), for some of the new Hy update rules, we will need to add new `import` and `require` statements. The additions will need to be scoped somewhat intelligently...
Can the `[pre/post]walk` and fixed-point iterations be performed in miniKanren (e.g. using recursive relations, `conde`/`alwayso`/`anyo`, etc.)? If so, are there any advantages to doing that?
As mentioned [here](https://github.com/hylang/hydiomatic/pull/13#issuecomment-426900471), we should probably add source and target versions to the rulesets and command line. This would allow us to safely reinstate the old and new Hy syntax...
This PR provides an implementation of [“A Surprisingly Competitive Conditional Operator”](https://www.brinckerhoff.org/scheme2018/papers/Boskin_Ma_Christiansen_Friedman.pdf). As I mentioned in [this comment](https://github.com/pymc-devs/symbolic-pymc/issues/6#issuecomment-470765132), there's an interesting avenue to explore regarding cross-`cond`-branch states, and I've included an...
With a `ChainMap`-like state class, we could constrain the amount of state (e.g. `dict`) cloning that `kanren` does, which should provide a big performance improvement when states are large `Mapping`s...
In relation to https://github.com/pythological/kanren/issues/55, using a [`WeakKeyDictionary`](https://github.com/pythological/kanren/issues/55) might help automatically thin large states containing "auxiliary" logic variables that are no longer relevant. We would definitely need to profile this and...
Looking at the `walko` example in https://github.com/aesara-devs/aesara/discussions/1082, I'm starting to wonder if some of those entries in the state are necessary or not. In particular, ```python from kanren import eq,...
`ground_order` doesn't really order terms in a way that avoids infinite recursion in `term_walko` (e.g. when called by the `kanren.assoccomm` goals). There should be a way to handle this—at least...