dyna
dyna copied to clipboard
Dyna2 compiler and REPL
At the moment we use FIFO. For acyclic programs there is probably little advantage to straying away from topological order. Computing topological order in a Dyna program isn't totally obvious...
In the max-product algorithm, I wrote this (where L is a label on the edge): ``` ecount(L,U,V) += alpha(U)*edge(L,U,V)*beta(V). ``` It seemed to be extremely slow (I had to abort...
e.g., `trace $key(pathto("white"))`
Backpointers
How should we support backpointers for extracting derivations?
Related to trace commands on #1, we might look at AILog2's tracing. http://www.cs.ubc.ca/~poole/aibook/code/ailog/ailog_man_7.html It's interactive, which I think would probably better be handled in a GUI, although they do it...
The forward-backward ice cream spreadsheet example seems to be exposing bugs in the Dyna implementation. Can you guys try to make it work right? I wrote this code last night...
Strings should be double-quoted. I'm not sure what the current single-quoted strings mean: in Prolog, that's just a way of writing functors that may contain special characters (if we decide...
As per longstanding design, the unary symbol `*` is a gensym. Basic gensyms should be easy enough to implement for now (the design only gets tricky once we add stuff...
Right now ``` foo. ``` appears to translate as ``` foo |= true. ``` I think the aggregator should be `:-` rather than `|=` since this is part of the...
``` jasoneis@a14:~$ ls *5.dyna anagram5.dyna subst5.dyna swap5.dyna swapadj5.dyna jasoneis@a14:~$ dyna -i *5.dyna usage: interpreter.py [-h] [-i] [--plan] [-o OUTPUT] [--post-process [POST_PROCESS [POST_PROCESS ...]]] [--load [LOAD [LOAD ...]]] [source] interpreter.py: error:...