]>
hydra-www.ietfng.org Git - dyna2/log
Nathaniel Wesley Filardo [Thu, 11 Jul 2013 04:13:01 +0000 (00:13 -0400)]
Prune some unused code from the test suite
Nathaniel Wesley Filardo [Thu, 11 Jul 2013 03:54:18 +0000 (23:54 -0400)]
Add hpc coverage for self-tests
Run with "make test-hpc" and then open dist/selftest-hpc-out/index.html for
your viewing pleasure.
Tim Vieira [Wed, 10 Jul 2013 23:25:31 +0000 (19:25 -0400)]
better FIFO
Tim Vieira [Wed, 10 Jul 2013 23:14:58 +0000 (19:14 -0400)]
Issue #1: display [] instead of &nil.
Tim Vieira [Wed, 10 Jul 2013 20:34:35 +0000 (16:34 -0400)]
Issue #40: Dyna will concatenate files for you, but it won't give you nice error messages.
Nathaniel Wesley Filardo [Wed, 10 Jul 2013 19:27:44 +0000 (15:27 -0400)]
Fix "longest-match" requirement on operators
We were running a token parser before the "notFollowedBy", which is clearly
wrong. Now, tokenize a strict string then notFollowedBy. This will require
that users write things like "... <oper> -<expr>" even though "<oper><expr>"
is accepted and "-<expr>" is an <expr>.
While here, add an explicit regression test for this bug.
This closes nwf/dyna#45 .
Tim Vieira [Wed, 10 Jul 2013 19:34:43 +0000 (15:34 -0400)]
Merge ../working
Tim Vieira [Wed, 10 Jul 2013 19:34:16 +0000 (15:34 -0400)]
Issue #15: updated Jason's Dijkstra backpointer example to use which doesn't quote its second argument.
Tim Vieira [Wed, 10 Jul 2013 19:21:53 +0000 (15:21 -0400)]
remove numpy as dep to speed-up load time Issue #44
Tim Vieira [Wed, 10 Jul 2013 19:14:08 +0000 (15:14 -0400)]
Merge ../working
Tim Vieira [Wed, 10 Jul 2013 19:10:24 +0000 (15:10 -0400)]
(Issue #46) `:-` now implicit aggregator for facts. `|=` no longer available.
Tim Vieira [Wed, 10 Jul 2013 18:29:31 +0000 (14:29 -0400)]
with_key no longer quotes it's second argument.
Jason Eisner [Wed, 10 Jul 2013 13:15:03 +0000 (09:15 -0400)]
minor edits
Jason Eisner [Wed, 10 Jul 2013 12:39:20 +0000 (08:39 -0400)]
added forward-backward.dyna, and its companion file icecream.dyna.
It exposes errors in the current implementation: see #47.
Jason Eisner [Wed, 10 Jul 2013 08:36:59 +0000 (04:36 -0400)]
restored +x permission to debug (somehow removed before previous commit)
Jason Eisner [Wed, 10 Jul 2013 08:35:01 +0000 (04:35 -0400)]
simplified examples/dijkstra-backpointers.dyna, and added a variant
Tim Vieira [Wed, 10 Jul 2013 03:05:22 +0000 (23:05 -0400)]
merge.
Tim Vieira [Wed, 10 Jul 2013 02:51:32 +0000 (22:51 -0400)]
fixed force-directed layout.
Tim Vieira [Tue, 9 Jul 2013 20:55:04 +0000 (16:55 -0400)]
new infix operator for alist `->`/2
tweaks to list tests.
Tim Vieira [Tue, 9 Jul 2013 19:55:22 +0000 (15:55 -0400)]
small improvements to handling booleans
clean up aggregators
crash handler hook (write repl lines)
hide ugly file names in error messages
more test cases added coverage target to makefile
added a few more test cases.
Tim Vieira [Mon, 8 Jul 2013 19:12:56 +0000 (15:12 -0400)]
()
Tim Vieira [Mon, 8 Jul 2013 19:10:41 +0000 (15:10 -0400)]
Small tweaks.
added `range` to stdlib
tiny tweak (nonfunctional) to doctest.
small improvement to bool (runtime) type checking.
Nathaniel Wesley Filardo [Mon, 8 Jul 2013 04:00:25 +0000 (00:00 -0400)]
Small, non-functional changes around the tree
Nathaniel Wesley Filardo [Mon, 8 Jul 2013 03:30:05 +0000 (23:30 -0400)]
Try to improve python crash logging
This seems like it should work, but IPython seems to be getting in my way.
Nathaniel Wesley Filardo [Mon, 8 Jul 2013 02:21:33 +0000 (22:21 -0400)]
exitFailure on panic
Tim Vieira [Mon, 8 Jul 2013 00:27:01 +0000 (20:27 -0400)]
added parsing (training, parsing, testing) `test/app/ptb.dynadoc`.
Tim Vieira [Mon, 8 Jul 2013 00:25:42 +0000 (20:25 -0400)]
make run-doctest.py executable
catch errors when retracting rules.
Tim Vieira [Sun, 7 Jul 2013 20:22:03 +0000 (16:22 -0400)]
Merge branch 'master' of ssh://github.com/nwf/dyna
Tim Vieira [Sun, 7 Jul 2013 20:17:39 +0000 (16:17 -0400)]
Issue #12 simplify output of "draw" command. Edge crux shrunk down to small
circle. Mouse over shows the rule source and rule index.
minor tweaks to readme.
Tim Vieira [Sun, 7 Jul 2013 20:17:39 +0000 (16:17 -0400)]
circle. Mouse over shows the rule source and rule index.
minor tweaks to readme.
Tim Vieira [Sat, 6 Jul 2013 19:15:27 +0000 (15:15 -0400)]
()
Tim Vieira [Sat, 6 Jul 2013 17:44:56 +0000 (13:44 -0400)]
update tests - new solution formatting.
Tim Vieira [Sat, 6 Jul 2013 16:52:46 +0000 (12:52 -0400)]
Issue #38 "better printing of :- items, and better type checking for :-, |=, &="
`:-` and `|=` are now synonymous.
Tim Vieira [Sat, 6 Jul 2013 04:12:28 +0000 (00:12 -0400)]
might error when retracting a BC rule.
Tim Vieira [Sat, 6 Jul 2013 02:46:30 +0000 (22:46 -0400)]
tweaks.
Tim Vieira [Fri, 5 Jul 2013 23:29:31 +0000 (19:29 -0400)]
()
Tim Vieira [Fri, 5 Jul 2013 23:25:59 +0000 (19:25 -0400)]
use doctests
Tim Vieira [Fri, 5 Jul 2013 23:03:31 +0000 (19:03 -0400)]
use doctester
Tim Vieira [Fri, 5 Jul 2013 22:24:28 +0000 (18:24 -0400)]
remove cruft.
Tim Vieira [Fri, 5 Jul 2013 22:16:21 +0000 (18:16 -0400)]
`dict=` create something like associative list -- this lets us use it in our
dyna programs.
doctests strip colors
tweak to solution print out: print 'Solution empty' instead of a "Solution"
heading.
proper BC rule retraction.
Tim Vieira [Fri, 5 Jul 2013 18:30:34 +0000 (14:30 -0400)]
Merge ../working
Tim Vieira [Fri, 5 Jul 2013 18:30:18 +0000 (14:30 -0400)]
added dyna doctest for retracting BC rules.
Tim Vieira [Fri, 5 Jul 2013 18:29:06 +0000 (14:29 -0400)]
working on fixing BC rule retraction.
Nathaniel Wesley Filardo [Fri, 5 Jul 2013 18:12:04 +0000 (14:12 -0400)]
Generate update plans for backchained items
This is necessary to allow retraction.
While here, wire up a backchain example into the test harness.
Tim Vieira [Fri, 5 Jul 2013 17:15:26 +0000 (13:15 -0400)]
Merge ../working
Tim Vieira [Fri, 5 Jul 2013 17:14:40 +0000 (13:14 -0400)]
added dijkstra-backpointers to end-to-end tests.
Tim Vieira [Fri, 5 Jul 2013 17:06:40 +0000 (13:06 -0400)]
added `with_key` infix operator for (Issue #29 Backpointers) and argument
disposition for `$key/1`.
Removed previous version of `argmin=/argmax=`.
Tim Vieira [Fri, 5 Jul 2013 03:04:00 +0000 (23:04 -0400)]
Merge ../working
Tim Vieira [Fri, 5 Jul 2013 03:01:15 +0000 (23:01 -0400)]
implementation of @nwf's argm idea for backpointers (#29). Uses `$key` instead
of `argm`.
BUGFIX: hash and eq for list wasn't correct.
Tim Vieira [Thu, 4 Jul 2013 03:22:38 +0000 (23:22 -0400)]
Merge ../working
Tim Vieira [Thu, 4 Jul 2013 03:21:50 +0000 (23:21 -0400)]
minor fix to trace formatting
Tim Vieira [Wed, 3 Jul 2013 23:20:29 +0000 (19:20 -0400)]
Merge ../working
Tim Vieira [Wed, 3 Jul 2013 23:19:20 +0000 (19:19 -0400)]
multiline input in doctest
disable REPL run command.. it doesn't pass parser state along.
Tim Vieira [Wed, 3 Jul 2013 21:31:58 +0000 (17:31 -0400)]
Merge ../working
Tim Vieira [Wed, 3 Jul 2013 20:57:56 +0000 (16:57 -0400)]
Overhaul error message displays
- "pop-time": aggregation errors (e.g. two distinct values following into an
`=` aggregator) are group by functor/arity, then by type and only 10
instances are shown.
- "push-time": errors are grouped by rule, then error type (e.g. TypeError,
DivisionByZero), only 10 instances of the error are displayed.
- These changes help avoid an overwhelming cascade of very similar
errors. Users should be able to trace the sources of these errors using other
tools (e.g. `trace`)
Resolve issue #36
Program rules available in $rule -- doesn't do anything yet however.
Tweaks to doctest runner.
Tim Vieira [Wed, 3 Jul 2013 16:19:38 +0000 (12:19 -0400)]
Merge ../working
Tim Vieira [Wed, 3 Jul 2013 16:03:27 +0000 (12:03 -0400)]
improvements to `examples/ptb.dyna`
- (no longer a complete mess thanks to the new `load` commands)
- does binarization
- extracts and counts rules in a s-expression tree.
- parses a sentence given as a string AND extracts the optimal parse by
following backpointers.
sexpr loader uses nested lists as it's representation
'in'(+,+)+ asserts second arg is a list.
retract_rule: no longer crashes when retracting a backchained rule. There are
possible bugs because we haven't deleted the memo tables affected by that rule.
REPL: show changes after 'load' commands
String display format should no longer render special characters like '\n'
Nathaniel Wesley Filardo [Wed, 3 Jul 2013 05:00:19 +0000 (01:00 -0400)]
Merge branch 'master' of github.com:nwf/dyna
Nathaniel Wesley Filardo [Wed, 3 Jul 2013 04:59:28 +0000 (00:59 -0400)]
Stop collecting update handlers by functar
It seems much more profitable, going forward, to collect most things by
rules. If we want to get into fusion later, that's fine, but for the
moment...
Nathaniel Wesley Filardo [Wed, 3 Jul 2013 04:34:12 +0000 (00:34 -0400)]
Add PHONY label to tags targets in Makefile
Tim Vieira [Wed, 3 Jul 2013 03:16:58 +0000 (23:16 -0400)]
Error when user tries to iterate over something which is not a list (e.g. using
'in' operator).
Tim Vieira [Tue, 2 Jul 2013 22:13:36 +0000 (18:13 -0400)]
stable `set` and `bag` ordering.
Tim Vieira [Tue, 2 Jul 2013 21:48:27 +0000 (17:48 -0400)]
added example of optimal path extraction for shortest path.
Tim Vieira [Tue, 2 Jul 2013 21:46:07 +0000 (17:46 -0400)]
Proposal for definition of `argmax=/argmin=`.
Tim Vieira [Tue, 2 Jul 2013 04:14:51 +0000 (00:14 -0400)]
tweaks to trace to print lists nicely, and infix 'in'
Simplify error message pertaining to retracting a rule and when a query or trace
fails.
Tim Vieira [Mon, 1 Jul 2013 21:53:00 +0000 (17:53 -0400)]
added infix 'in' operator for "iterating" the elements of a list (i.e. `a += x
for X in [1,2,3].` with `X` free and the list bound.) and check if the item
exists in the list.
Tim Vieira [Mon, 1 Jul 2013 21:12:53 +0000 (17:12 -0400)]
added `mean=` aggregator.
`set=` and `bag=` aggregators return dyna lists. So we can use the results in
other rules.
make sure we show changes when we `retract_rule`
when we show changes we print a header
> a += 1.
Changes
=======
a = 1.
Also, pycall translates python and dyna lists.
Fixed formatting of lists, strings are double quoted.
Fixed `query [A|_] is [1,2,3]` -- we weren't substituting `A`.
Tim Vieira [Mon, 1 Jul 2013 19:47:37 +0000 (15:47 -0400)]
minor cleanup.
Tim Vieira [Mon, 1 Jul 2013 19:35:56 +0000 (15:35 -0400)]
update tests to reflect new output format.
Tim Vieira [Mon, 1 Jul 2013 19:29:15 +0000 (15:29 -0400)]
Changed output format yet again. Everything is now consistent with "term =
value."
Robustified retract_rule.
Incorporated Jason's tweaks to trace.
Tim Vieira [Mon, 1 Jul 2013 05:20:59 +0000 (01:20 -0400)]
hide ugly filenames from users.
Tim Vieira [Mon, 1 Jul 2013 05:09:29 +0000 (01:09 -0400)]
updated documentation to use new repl `>` instead of `:-`.
Tim Vieira [Mon, 1 Jul 2013 04:57:47 +0000 (00:57 -0400)]
fixed repl test
Tim Vieira [Mon, 1 Jul 2013 04:56:38 +0000 (00:56 -0400)]
merge
Tim Vieira [Mon, 1 Jul 2013 04:48:58 +0000 (00:48 -0400)]
updated repl tests.
Tim Vieira [Mon, 1 Jul 2013 04:46:35 +0000 (00:46 -0400)]
Many changes
* changed repl prompt
* commented out failed attempt at providing 'for X in [1,2,3]'
* hid developer tools from repl.
* trace:
- fixed cycle detection
- terser information printed for each edge.
item => value
| += val1
|
| instantiated rule with subexpressions and variable values shown
| inline.
|
| RECURSE on items in rule.
|
| += val2
- changed color coding.
- documentation, `> help trace`
* No more barfing on empty input to trace, query, vquery.
Tim Vieira [Mon, 1 Jul 2013 04:38:27 +0000 (00:38 -0400)]
changed repl prompt
commented out failed attempt at providing 'for X in [1,2,3]'
hid developer tools from repl.
trace:
- fixed cycle detection
- terser information printed for each edge.
item => value
| += val1
|
| instantiated rule with subexpressions and variable values shown
| inline.
|
| RECURSE on items in rule.
|
| += val2
- changed color coding.
- documentation, `> help trace`
No more barfing on empty input to trace, query, vquery.
Nathaniel Wesley Filardo [Mon, 1 Jul 2013 04:04:43 +0000 (00:04 -0400)]
Soften exception messages a bit
Some infinitessimal part of github issue #32.
Nathaniel Wesley Filardo [Mon, 1 Jul 2013 02:49:22 +0000 (22:49 -0400)]
Bump required versions of parsers and trifecta
Parsers v0.8.3 (commit
537337c9 ) undoes a performance regression
(of my creation, oops) which turns out to be important for us.
Tim Vieira [Sun, 30 Jun 2013 23:59:26 +0000 (19:59 -0400)]
Merge branch 'master' of ssh://github.com/nwf/dyna
Nathaniel Wesley Filardo [Sun, 30 Jun 2013 22:26:15 +0000 (18:26 -0400)]
Add special handling for = and ==.
Their evaluation has been inlined, increasing the number of modes supported.
Tim Vieira [Sun, 30 Jun 2013 18:09:32 +0000 (14:09 -0400)]
Changed output format for solution
Nathaniel Wesley Filardo [Sun, 30 Jun 2013 06:59:41 +0000 (02:59 -0400)]
Wire up oper pragmas.
They're a little unpleasant, but it works. While here, correct the
documentation.
Nathaniel Wesley Filardo [Sun, 30 Jun 2013 06:42:09 +0000 (02:42 -0400)]
Remove defaults from operator parser
(Some unit-tests keep them on for the moment)
Nathaniel Wesley Filardo [Sun, 30 Jun 2013 06:36:49 +0000 (02:36 -0400)]
Strictify Main.Driver configuration fields
Notably, this improves handling of some invocation errors, as it forces
things earlier.
Nathaniel Wesley Filardo [Sun, 30 Jun 2013 06:33:44 +0000 (02:33 -0400)]
Add [,,,|Rest] syntax support to parser
Tim Vieira [Sun, 30 Jun 2013 04:49:45 +0000 (00:49 -0400)]
trace available at repl supports viewing derivations each item matching query
:- a :- b.
:- b:- c.
:- c.
=============
a := true
b := true
c := true
:- trace a
a = true
|
└─ :- true
# a :- b.
# a :- b. where {}
head: &a
result: b=true
|
└─ b = true
|
└─ :- true
# b:- c.
# b:- c. where {}
head: &b
result: c=true
|
└─ c = true
|
└─ |= true
# c.
# c. where {}
head: &c
result: &true
Tim Vieira [Sun, 30 Jun 2013 02:49:42 +0000 (22:49 -0400)]
Many changes
* Support for `=` aggregator. #23
* BUGFIX: when --plan is specified (sorry :-X)
* tweak to error handling. when an item's aggregator fails we set it's value to
$error instead of it's last "ok" value.
the repl also show this item as "changed"
* tweaks to doctest runnner
* attempt at contains/2 for list membership -- will eventually change to infix
operator `in`
* cons and nil can't be assigned values.
Tim Vieira [Sat, 29 Jun 2013 05:00:59 +0000 (01:00 -0400)]
Each Interpreters now has a workspace `~/.dyna/tmp/$PID`. This directory is for
any files used by the code generator, REPL, etc.
Tim Vieira [Sat, 29 Jun 2013 04:21:50 +0000 (00:21 -0400)]
tweaks to the README, todo list, and repl formatting.
Tim Vieira [Sat, 29 Jun 2013 01:51:15 +0000 (21:51 -0400)]
Tweaks to error messages.
Improved documentation for loaders and post-processors.
Tim Vieira [Fri, 28 Jun 2013 21:16:49 +0000 (17:16 -0400)]
()
Tim Vieira [Fri, 28 Jun 2013 21:16:36 +0000 (17:16 -0400)]
added examples/lists.dyna to end-to-end tests
Tim Vieira [Fri, 28 Jun 2013 21:12:03 +0000 (17:12 -0400)]
merged
Tim Vieira [Fri, 28 Jun 2013 21:02:56 +0000 (17:02 -0400)]
Merge ../working
Tim Vieira [Fri, 28 Jun 2013 21:02:50 +0000 (17:02 -0400)]
cleanup
Tim Vieira [Fri, 28 Jun 2013 21:00:29 +0000 (17:00 -0400)]
Removed existing calls to pycall. stdlib functions must be declared manually as
a case in the `constants` function `Python/Backend.hs`. Otherwise, `pycall` is
still available.
Tim Vieira [Fri, 28 Jun 2013 20:41:39 +0000 (16:41 -0400)]
()
Tim Vieira [Fri, 28 Jun 2013 20:39:46 +0000 (16:39 -0400)]
pygments is now optional (if it's missing you are warned if you run or import
debug somewhere.)
extended dyna compiler wrapper (dynac)
Nathaniel Wesley Filardo [Fri, 28 Jun 2013 20:31:59 +0000 (16:31 -0400)]
Merge branch 'master' of github.com:nwf/dyna