]> hydra-www.ietfng.org Git - dyna2/log
dyna2
13 years agoBetter error messages:
timv [Wed, 5 Jun 2013 22:14:56 +0000 (18:14 -0400)]
Better error messages:

 - handle errors in rule initializers.

 - include rule source in error message

 - no need to run delete-updates when an item "was" causing an error because
   these updates don't land on the agenda.

REPL uses correct rule indexes

 - Parser state maintained across calls.

 - colon equals is no longer buggy in the REPL.

Codegen minor aesthetics

13 years agomerge
timv [Wed, 5 Jun 2013 20:04:18 +0000 (16:04 -0400)]
merge

13 years ago()
timv [Wed, 5 Jun 2013 20:04:02 +0000 (16:04 -0400)]
()

13 years agoMerge branch 'master' of github.com:nwf/dyna
Nathaniel Wesley Filardo [Wed, 5 Jun 2013 19:00:15 +0000 (15:00 -0400)]
Merge branch 'master' of github.com:nwf/dyna

13 years agoMore parser work
Nathaniel Wesley Filardo [Wed, 5 Jun 2013 18:55:16 +0000 (14:55 -0400)]
More parser work

Allow backends to restrict the set of acceptable aggregators.
Feed through rendered parser state.

13 years agomerge
timv [Wed, 5 Jun 2013 16:26:17 +0000 (12:26 -0400)]
merge

13 years agoadded a few examples.
timv [Wed, 5 Jun 2013 16:25:56 +0000 (12:25 -0400)]
added a few examples.

13 years agoMinor work in Analysis.Mode.Selftest.Contexts
Nathaniel Wesley Filardo [Wed, 5 Jun 2013 07:49:35 +0000 (03:49 -0400)]
Minor work in Analysis.Mode.Selftest.Contexts

13 years agoTidy README.md a bit
Nathaniel Wesley Filardo [Wed, 5 Jun 2013 06:59:01 +0000 (02:59 -0400)]
Tidy README.md a bit

13 years agoAdd a placeholder tutorial section on errors
Nathaniel Wesley Filardo [Wed, 5 Jun 2013 06:31:04 +0000 (02:31 -0400)]
Add a placeholder tutorial section on errors

13 years agoNew documentation and cleanups
Nathaniel Wesley Filardo [Wed, 5 Jun 2013 05:06:45 +0000 (01:06 -0400)]
New documentation and cleanups

Notably, add docs/sphinx for our prose documentation and several
corresponding Makefile targets.

13 years agoSmall cleanups & update TODO
Nathaniel Wesley Filardo [Wed, 5 Jun 2013 00:30:27 +0000 (20:30 -0400)]
Small cleanups & update TODO

13 years agoMore parser work
Nathaniel Wesley Filardo [Tue, 4 Jun 2013 23:56:52 +0000 (19:56 -0400)]
More parser work

Attempts to serialize parser state as a wad of pragmas and hand
them off to the backend.  This is hardly ideal, but it's something.

13 years agoFix a failing test
Nathaniel Wesley Filardo [Tue, 4 Jun 2013 23:52:16 +0000 (19:52 -0400)]
Fix a failing test

Automata in prop_call_test_sufficient should be nonempty on all disjuncts.

Thanks to Tim for the report.

13 years agoAdd dijkstra example as python selftest
Nathaniel Wesley Filardo [Tue, 4 Jun 2013 23:50:27 +0000 (19:50 -0400)]
Add dijkstra example as python selftest

13 years agoadded matrixops to python end-to-end tests.
timv [Tue, 4 Jun 2013 23:45:23 +0000 (19:45 -0400)]
added matrixops to python end-to-end tests.

13 years agomerge
timv [Tue, 4 Jun 2013 23:38:55 +0000 (19:38 -0400)]
merge

13 years agoError handling, hypergraph recovery.
timv [Tue, 4 Jun 2013 23:38:21 +0000 (19:38 -0400)]
Error handling, hypergraph recovery.
  - code instrumentation `emit` now passed passengers.
  - see draw() method and --draw flag

13 years agominor cosmetics.
timv [Tue, 4 Jun 2013 20:12:11 +0000 (16:12 -0400)]
minor cosmetics.

13 years agoMerge branch 'master' of github.com:nwf/dyna
Nathaniel Wesley Filardo [Tue, 4 Jun 2013 20:03:01 +0000 (16:03 -0400)]
Merge branch 'master' of github.com:nwf/dyna

13 years agotweaks to style in debugger html output.
timv [Tue, 4 Jun 2013 20:02:16 +0000 (16:02 -0400)]
tweaks to style in debugger html output.

13 years agomerge
timv [Tue, 4 Jun 2013 19:43:08 +0000 (15:43 -0400)]
merge

13 years agocodegen: put docstrings on handlers and initializers.
timv [Tue, 4 Jun 2013 19:42:25 +0000 (15:42 -0400)]
codegen: put docstrings on handlers and initializers.

  - update ./debug to parse new format.

Updated TODO list.

parse_sexpr handles double quoted strings (at least crudely).

13 years agoSome work towards resumable parsing
Nathaniel Wesley Filardo [Tue, 4 Jun 2013 19:41:33 +0000 (15:41 -0400)]
Some work towards resumable parsing

13 years agoMerge branch 'master' of github.com:nwf/dyna
Nathaniel Wesley Filardo [Tue, 4 Jun 2013 03:39:07 +0000 (23:39 -0400)]
Merge branch 'master' of github.com:nwf/dyna

13 years agoFix some parser bugs
Nathaniel Wesley Filardo [Tue, 4 Jun 2013 03:29:27 +0000 (23:29 -0400)]
Fix some parser bugs

Aggregator parsing now much more rigorous & have more self-tests.
Facts now use "|=" aggregation as they should

13 years agoemits are buffered in case an exception is thrown.
timv [Tue, 4 Jun 2013 03:27:53 +0000 (23:27 -0400)]
emits are buffered in case an exception is thrown.

fixed typo in arity of mod.

13 years agoupdated expected output for papa2.
timv [Tue, 4 Jun 2013 03:26:09 +0000 (23:26 -0400)]
updated expected output for papa2.

13 years agousing an actual priority queue, no more ``_delete`` global variable.
timv [Mon, 3 Jun 2013 18:58:00 +0000 (14:58 -0400)]
using an actual priority queue, no more ``_delete`` global variable.

global error suppression flag

13 years agomerge
timv [Mon, 3 Jun 2013 15:47:49 +0000 (11:47 -0400)]
merge

13 years agoQueries return variable assignments
timv [Mon, 3 Jun 2013 15:45:17 +0000 (11:45 -0400)]
Queries return variable assignments

:- query rewrite(X,Y)
(1, {'Y': 'ate', 'X': 'V'})
(1, {'Y': 'caviar', 'X': 'N'})
(1, {'Y': 'spoon', 'X': 'N'})
(1, {'Y': 'the', 'X': 'Det'})
(1, {'Y': 'with', 'X': 'P'})
(1, {'Y': 'a', 'X': 'Det'})
(1, {'Y': 'Papa', 'X': 'NP'})

Added `dict=` (name might changed) and aggregator which stores user variable
assignments. [This is what is used for answering queries like the one above.qq]

13 years agoRework parser infrastructure
Nathaniel Wesley Filardo [Mon, 3 Jun 2013 07:10:32 +0000 (03:10 -0400)]
Rework parser infrastructure

Parser now really should just be the parser.
OneshotDriver consumes an entire Dyna program at once, tracking
  all the requisite state from line to line, before emitting the
  whole mass to the down-stream pipeline.

While here, push through some changes for custom operator symbols, though
this is not quite wired up yet.

13 years agoRemove stale files
Nathaniel Wesley Filardo [Mon, 3 Jun 2013 03:52:30 +0000 (23:52 -0400)]
Remove stale files

13 years ago()
timv [Mon, 3 Jun 2013 03:26:54 +0000 (23:26 -0400)]
()

13 years agomerge
timv [Mon, 3 Jun 2013 03:10:34 +0000 (23:10 -0400)]
merge

13 years agoFix a typo in matrixops example
Nathaniel Wesley Filardo [Mon, 3 Jun 2013 02:52:19 +0000 (22:52 -0400)]
Fix a typo in matrixops example

13 years agomoved pretty into Term.__repr__
timv [Mon, 3 Jun 2013 02:51:20 +0000 (22:51 -0400)]
moved pretty into Term.__repr__

13 years agoChart does not need update method thanks to the new Term objects.
timv [Mon, 3 Jun 2013 02:23:32 +0000 (22:23 -0400)]
Chart does not need update method thanks to the new Term objects.

13 years agoLots of work in Dyna.Analysis.Mode
Nathaniel Wesley Filardo [Mon, 3 Jun 2013 02:03:23 +0000 (22:03 -0400)]
Lots of work in Dyna.Analysis.Mode

13 years agoMerge branch 'master' of github.com:nwf/dyna
Nathaniel Wesley Filardo [Mon, 3 Jun 2013 01:57:36 +0000 (21:57 -0400)]
Merge branch 'master' of github.com:nwf/dyna

13 years agoRefactored: Term's store reference to their aggregator.
timv [Mon, 3 Jun 2013 01:52:57 +0000 (21:52 -0400)]
Refactored: Term's store reference to their aggregator.

13 years agoMake BackendDefn 'constants' a function
Nathaniel Wesley Filardo [Mon, 3 Jun 2013 01:51:00 +0000 (21:51 -0400)]
Make BackendDefn 'constants' a function

Rather than a guaranteed finite map.  While here, make NoBackend agree more
with the Python backend and sort the lists of primitives.

13 years agoChart now has indexes on each argument (but not the value).
timv [Mon, 3 Jun 2013 01:12:41 +0000 (21:12 -0400)]
Chart now has indexes on each argument (but not the value).

Chart stores Term objects.

13 years agoFixed colon equals aggregator (:=).
timv [Mon, 3 Jun 2013 01:08:20 +0000 (21:08 -0400)]
Fixed colon equals aggregator (:=).

13 years agoSimplified code produced by Python codegen.
timv [Mon, 3 Jun 2013 01:07:53 +0000 (21:07 -0400)]
Simplified code produced by Python codegen.

   for (X, Z, Value) in chart[:,Y,:,:]

is now

   for (X, _, Z, Value) in chart[:,Y,:,:]

13 years agocolon equals (:=) tests.
timv [Mon, 3 Jun 2013 00:20:17 +0000 (20:20 -0400)]
colon equals (:=) tests.

13 years ago()
timv [Sun, 2 Jun 2013 17:47:58 +0000 (13:47 -0400)]
()

13 years agoMerge branch 'master' of ssh://github.com/nwf/dyna
Tim Vieira [Sun, 2 Jun 2013 17:34:12 +0000 (13:34 -0400)]
Merge branch 'master' of ssh://github.com/nwf/dyna

13 years agoNoticed some quirky behavior with global variables when REPL was in a different
Tim Vieira [Sun, 2 Jun 2013 17:29:16 +0000 (13:29 -0400)]
Noticed some quirky behavior with global variables when REPL was in a different
module from interpreter so I switched it back temporarily.

minor refactoring to Chart.update and Chart.insert

The new Term object hasn't been pushed all the way thru. The old-style (fn,idx)
tuples are what get stored in the chart.

   TODO: track down and fix this.

Ghetto way to answer queries.

  :- query phrase(X,I,K)

in(2) :- query rewrite(X,I,K)
out(2) bag= _VALUE is rewrite(X,I,K), &result(&(rewrite(X,I,K)), _VALUE).
=============
out(2) := BAggregator({result(rewrite('PP','P','NP'),1): 1,
                       result(rewrite('VP','VP','PP'),1): 1,
                       ...
                       })

13 years agoTry a new definition for := in python backend
Nathaniel Wesley Filardo [Sat, 1 Jun 2013 23:00:37 +0000 (19:00 -0400)]
Try a new definition for := in python backend

13 years agoMake emissions explicit in DOpAMine
Nathaniel Wesley Filardo [Sat, 1 Jun 2013 22:24:48 +0000 (18:24 -0400)]
Make emissions explicit in DOpAMine

Change the world so that the planner generates OPEmit verbs rather
than emissions being magical bits of the backend.  Expand the notion of an
emission to include the rule index (required for :=) and a set of variables
for hyper-edge identification.  (Currently, we emit all of them, but later
we will want to trim this down to only nondeterministic variables.)

This change is the code-generator mate of timv's changes in 6abdc37.

13 years agoDetect missing alex and happy in make deps
Nathaniel Wesley Filardo [Sat, 1 Jun 2013 22:11:13 +0000 (18:11 -0400)]
Detect missing alex and happy in make deps

13 years agocleanup/move repl into its own module.
Tim Vieira [Sat, 1 Jun 2013 06:53:15 +0000 (02:53 -0400)]
cleanup/move repl into its own module.

13 years agominor cleanups
Tim Vieira [Sat, 1 Jun 2013 06:19:11 +0000 (02:19 -0400)]
minor cleanups

13 years agoCleaner representation of Term's as Python objects.
Tim Vieira [Sat, 1 Jun 2013 05:34:16 +0000 (01:34 -0400)]
Cleaner representation of Term's as Python objects.

REPL handles ^C

13 years agoFirst-pass at a REPL
Tim Vieira [Sat, 1 Jun 2013 03:21:49 +0000 (23:21 -0400)]
First-pass at a REPL

 - user can add new rules (LIMITATIONS: no retracting rules; no queries yet.)

    - new rules check for aggregator conflict.

 - only shows the user what changed as a result of the new rule. rather than
   dumping the entire chart. The chart isn't dumped every time we hit go().

Nicer chart pretty printing (only relevant to sets or lists of items), which is
only experimental.

Reverted Wes' changes to eval it seems like the change was not tested. Sorry Wes.

Nicer formatting for tracing messages. Tracing is no longer printed to
stderr. by defualt, it goes to /tmp/dyna.log (there is a cmdline option to
change that; there is also commands in the REPL "trace on" and "trace off").

13 years agomerge.
Tim Vieira [Fri, 31 May 2013 21:44:17 +0000 (17:44 -0400)]
merge.

13 years agoadded dynac_code -- toward a REPL!
Tim Vieira [Fri, 31 May 2013 21:42:28 +0000 (17:42 -0400)]
added dynac_code -- toward a REPL!

13 years agoMerge branch 'master' of github.com:nwf/dyna
Nathaniel Wesley Filardo [Fri, 31 May 2013 18:35:13 +0000 (14:35 -0400)]
Merge branch 'master' of github.com:nwf/dyna

13 years agooops.
Tim Vieira [Fri, 31 May 2013 18:19:03 +0000 (14:19 -0400)]
oops.

13 years agoSwitch python selftests to run compiler themselves
Nathaniel Wesley Filardo [Thu, 30 May 2013 20:29:00 +0000 (16:29 -0400)]
Switch python selftests to run compiler themselves

And only run the interpreter as a captive process.  This change is made with
the intent of more accurately reflecting code coverage when we start
tracking that within self-tests.

13 years agoadded --plan option to feed compiler output directly into interpreter without calling...
Tim Vieira [Thu, 30 May 2013 17:49:55 +0000 (13:49 -0400)]
added --plan option to feed compiler output directly into interpreter without calling dyna compiler.

13 years agoDocumentation tweaks
Nathaniel Wesley Filardo [Wed, 29 May 2013 16:43:45 +0000 (12:43 -0400)]
Documentation tweaks

Fix haddock in ParserHS

13 years agoBug-fix in planner
Nathaniel Wesley Filardo [Wed, 29 May 2013 02:02:27 +0000 (22:02 -0400)]
Bug-fix in planner

The ecrux being updated was erroneously fed into the planner as well,
leading to redundant OPIter in output plans.

While here, try to make some error messages more informative.

13 years agoSyntax modernization and cleanups
Nathaniel Wesley Filardo [Wed, 29 May 2013 02:00:35 +0000 (22:00 -0400)]
Syntax modernization and cleanups

Thanks to Juneki Hong for bringing to my attention that some of the
examples no longer built.

13 years agoSnapshot of work in progress
Nathaniel Wesley Filardo [Tue, 28 May 2013 17:50:32 +0000 (13:50 -0400)]
Snapshot of work in progress

Notably, this marks the first commit to fix an externally filed bug report;
thanks to Abram Demski for reporting!  Dyna should now build with ghc 7.4
and its Platform releases.  :)

(This commit is a little bigger than just the fix as I had already changed
some of the code in my working tree and there seemed to be no reason not to
just commit things.)

13 years agoTweak top-level executables to support DYNAHOME
Nathaniel Wesley Filardo [Thu, 23 May 2013 05:05:15 +0000 (01:05 -0400)]
Tweak top-level executables to support DYNAHOME

While tweaking things, take tests out of all target in Makefile

13 years agoMake a 'misc/' folder for odds and ends
Nathaniel Wesley Filardo [Tue, 21 May 2013 21:22:33 +0000 (17:22 -0400)]
Make a 'misc/' folder for odds and ends

Move HaddockPaths and vimrc there; add GHC bootstrapping script for
safe-keeping.

13 years agoMove some constants from ANF to SurfaceSyntax
Nathaniel Wesley Filardo [Sat, 18 May 2013 20:32:53 +0000 (16:32 -0400)]
Move some constants from ANF to SurfaceSyntax

13 years agoTry harder to build all haddocks at once
Nathaniel Wesley Filardo [Sat, 18 May 2013 19:14:00 +0000 (15:14 -0400)]
Try harder to build all haddocks at once

This is a pretty nasty hack which involves shell scripting and a small
program to go digging through Cabal internals.

13 years agoFix overlooked fallout from conversion to Insts
Nathaniel Wesley Filardo [Fri, 17 May 2013 20:46:48 +0000 (16:46 -0400)]
Fix overlooked fallout from conversion to Insts

This has a side-effect of fixing haddock builds. :)

13 years agoStop building hsdyna library
Nathaniel Wesley Filardo [Thu, 16 May 2013 22:30:23 +0000 (18:30 -0400)]
Stop building hsdyna library

Cabal isn't smart enough to use it internally to the other builds, and it
certainly has no other potential users at the moment.

13 years agoAdd "for" as another spelling of "whenever"
Nathaniel Wesley Filardo [Thu, 16 May 2013 22:28:01 +0000 (18:28 -0400)]
Add "for" as another spelling of "whenever"

13 years agoCheck in TODO list for LSA 2013.
Nathaniel Wesley Filardo [Thu, 16 May 2013 21:57:05 +0000 (17:57 -0400)]
Check in TODO list for LSA 2013.

Here's hoping.

13 years agoAnother change to ANF
Nathaniel Wesley Filardo [Wed, 15 May 2013 05:15:04 +0000 (01:15 -0400)]
Another change to ANF

Now that we are indexing evals by an unique Int, we may as well
enforce that with an IntMap, rather than just a Set.

This is in preparation for displaying each update's ANF after
double-counting prevention cruxes have been added.

13 years agoImprove ./debug
Nathaniel Wesley Filardo [Wed, 15 May 2013 04:40:35 +0000 (00:40 -0400)]
Improve ./debug

13 years agoCleanup ANF frontend some more
Nathaniel Wesley Filardo [Thu, 9 May 2013 05:12:19 +0000 (01:12 -0400)]
Cleanup ANF frontend some more

Eliminate the awkward old ANF language in favor of direct translation to
Cruxes in Dyna.Analysis.ANF.  Evaluation cruxes are now properly indexed
within rules using an Int, so we don't have to rely on the output variable
being unique.  There are more flavors of unification cruxes, including
inequality constraints.

The terrible 'handleConflictors' has been replaced with a much more
sane function which operates on cruxes, rather than on DOpAMine, which will
be welcome when we have more interesting OPIter modes.

While here, move python scripts from bin/ to src/Dyna/Backend/Python and
adjust the world.  Use this as an excuse to make ./debug invoke the dyna
compiler only once and dump everything to different files in $PROGRAM.d/

13 years agoFirst pass at new mode infrastructure plumbing
Nathaniel Wesley Filardo [Fri, 3 May 2013 23:43:07 +0000 (19:43 -0400)]
First pass at new mode infrastructure plumbing

This brings the Mercury mode system all the way out through the planner,
though it does not actually really avail itself of any of the improved
functionality.  It compiles and passes all selftests, but that, too, is
hardly saying anything.

13 years agoSnapshot before more surgery
Nathaniel Wesley Filardo [Fri, 12 Apr 2013 03:49:55 +0000 (23:49 -0400)]
Snapshot before more surgery

13 years agoFirst pass at disposition pragmas
Nathaniel Wesley Filardo [Sun, 31 Mar 2013 07:12:53 +0000 (03:12 -0400)]
First pass at disposition pragmas

13 years agoMore cleanups and a forgotten file
Nathaniel Wesley Filardo [Fri, 29 Mar 2013 18:26:28 +0000 (14:26 -0400)]
More cleanups and a forgotten file

13 years agoDependency fixes, hopefully
Nathaniel Wesley Filardo [Fri, 29 Mar 2013 18:03:12 +0000 (14:03 -0400)]
Dependency fixes, hopefully

13 years agoSnapshot mode stuff
Nathaniel Wesley Filardo [Mon, 25 Mar 2013 18:51:46 +0000 (14:51 -0400)]
Snapshot mode stuff

13 years agoSeveral small bug fixes
Nathaniel Wesley Filardo [Fri, 15 Mar 2013 03:08:39 +0000 (23:08 -0400)]
Several small bug fixes

13 years agoTidy source tree, update README
Nathaniel Wesley Filardo [Fri, 1 Mar 2013 05:55:49 +0000 (00:55 -0500)]
Tidy source tree, update README

13 years agoCheckpoint effort on the Mercury mode system
Nathaniel Wesley Filardo [Fri, 1 Mar 2013 04:48:29 +0000 (23:48 -0500)]
Checkpoint effort on the Mercury mode system

13 years agoFix and expand Analysis.Mode.Inst
Nathaniel Wesley Filardo [Tue, 12 Feb 2013 07:12:57 +0000 (02:12 -0500)]
Fix and expand Analysis.Mode.Inst

Correct iSubGLB_ definition
Add iEq_ and iSubLUB_
Expand commentary
Better IBound-vs-IBound cases in GLB functions

Some additional utilities appeared in XXX.DataUtils and XXX.MonadUtils.

13 years agoSome bits of Overton's mode system for Mercury
Nathaniel Wesley Filardo [Thu, 7 Feb 2013 08:47:36 +0000 (03:47 -0500)]
Some bits of Overton's mode system for Mercury

The beginnings of a re-implementation of Mercury's mode system, as described
in: David Overton. Precise and Expressive Mode Systems for Typed Logic
Programming Languages.  University of Melbourne, Department of Computer
Science and Software Engineering.  Ph.D. thesis. December, 2003.
<http://www.mercury.csse.unimelb.edu.au/information/papers.html#dmo-thesis>

13 years agoSome more small utility functions
Nathaniel Wesley Filardo [Thu, 7 Feb 2013 08:23:33 +0000 (03:23 -0500)]
Some more small utility functions

13 years agoMinor documentation tweaks
Nathaniel Wesley Filardo [Thu, 7 Feb 2013 08:22:43 +0000 (03:22 -0500)]
Minor documentation tweaks

13 years agoSlightly more friendly frontend driver
Nathaniel Wesley Filardo [Mon, 4 Feb 2013 20:53:34 +0000 (15:53 -0500)]
Slightly more friendly frontend driver

13 years agoUpdate to new parser & trifecta packages
Nathaniel Wesley Filardo [Mon, 4 Feb 2013 20:25:57 +0000 (15:25 -0500)]
Update to new parser & trifecta packages

13 years agoTidy source tree
Nathaniel Wesley Filardo [Sat, 12 Jan 2013 02:48:00 +0000 (21:48 -0500)]
Tidy source tree

  - Separate assignments and unifications in ANF.  Assignments are now
    exclusively for loading (or checking) literals.
  - Move term base cases out from our myriad of representations into
    Dyna.Term.TTerm's TBase.
  - Fix comma and whenever handling in ANF (which is a temporary hack)
    and while there, make "true" and "false" a little closer to correct.
  - Move Analysis.Aggregation over to Main.Exception rather than Either.
  - Remove some dead code from Backend.Python and ParserHS.Parser
  - While here and there, squash some warnings

13 years agoHaddock parse fix
Nathaniel Wesley Filardo [Fri, 11 Jan 2013 05:37:44 +0000 (00:37 -0500)]
Haddock parse fix

13 years agoParser has a new idea of expressions; planner fix
Nathaniel Wesley Filardo [Fri, 11 Jan 2013 04:50:06 +0000 (23:50 -0500)]
Parser has a new idea of expressions; planner fix

 - Move handling of the ','/2 and whenever/2 operators into the ANF
   processor, next to '*'/1, '&'/1, and is/2, rather than the parser.
 - Remove the side-condition field in rule forms
 - Fallout from this exposed a really, really bad initialization bug
   in the rule planner, which is now hopefully corrected.

13 years agoRestore external subodules, update, and update our code
Nathaniel Wesley Filardo [Fri, 11 Jan 2013 03:12:26 +0000 (22:12 -0500)]
Restore external subodules, update, and update our code

13 years agoRefactor planner; initial work towards backward chaining
Nathaniel Wesley Filardo [Wed, 9 Jan 2013 19:55:04 +0000 (14:55 -0500)]
Refactor planner; initial work towards backward chaining

13 years agoMore foolishness with sexy types
Nathaniel Wesley Filardo [Wed, 9 Jan 2013 19:54:26 +0000 (14:54 -0500)]
More foolishness with sexy types

13 years agoOverhaul pipeline and self-tests (╯°□°)╯︵ ┻━┻
Nathaniel Wesley Filardo [Thu, 20 Dec 2012 05:06:55 +0000 (00:06 -0500)]
Overhaul pipeline and self-tests (╯°□°)╯︵ ┻━┻

This moves us to the much more pleasant position of having one main driver
(in Dyna.Main.Driver) which runs the (common) analysis workers and then
hands off to a user-specified backend (though the interface of
Dyna.Main.BackendDefn).  Along the way, we can dump (to stderr or to files)
things we might care about.

Move the python interpreter and debugging tool over to the new pipeline
driver.  While doing that, add a "ghcbuild" target to the Makefile that may
behave better than the cabal-istic build mechanism for older GHCs than the
one on my machine.

Add a Python backend selftest module which compares us against "golden"
files in examples/expected/; they are named ".py.out" on the chance that we
get similar golden files for other backends eventually.  Wire this in to the
main test harness on the "simple" and "papa2" examples.

While here, move the test harness out of Dyna.Test to Dyna.Main.TestsDriver,
update the README, and move it to Markdown.

┬──┬ ノ( ゜-゜ノ)

13 years agoComment out compile-failing K3 test case
Nathaniel Wesley Filardo [Thu, 20 Dec 2012 04:23:40 +0000 (23:23 -0500)]
Comment out compile-failing K3 test case