From 1fb57696f9e5629153a2b257de5d5d0a009536f4 Mon Sep 17 00:00:00 2001 From: Jason Eisner Date: Thu, 15 Aug 2013 08:16:14 -0400 Subject: [PATCH] expanded README.md with tutorial links, download instructions, authorship, and an updated disclaimer. --- README.md | 63 +++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 47 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index ddde150..0b2d527 100644 --- a/README.md +++ b/README.md @@ -10,17 +10,32 @@ way of specifying both data and algorithms. Dyna's algorithms are reactive---a change to an item's value efficiently propagates throughout the dynabase so that all equations are satisfied. +Background and Tutorials +------------------------ + +* [Papers and slides](http://cs.jhu.edu/~jason/papers/#Dyna) about Dyna +* Installation instructions below +* [Hands-on tutorial](http://cs.jhu.edu/~darcey/dyna-tutorial.pdf) to get started +* [Slides](http://cs.jhu.edu/~jason/licl/) (see 7/5 and 7/11) using Dyna code to teach natural language processing algorithms +* [Homework exercises](http://cs.jhu.edu/~jason/licl/hw3/hw3.pdf) using this implementation + +*Note*: A previous, efficient implementation for a more restricted version of the language can be found at [dyna.org](http://dyna.org), along with discussion from that time. Quick Start ----------- -First, ensure that you have the Haskell platform 2012.2 or later installed +First clone the git repository on your local machine, e.g., + git clone http://github.com/nwf/dyna +or download a snapshot as a zip file: + wget https://github.com/nwf/dyna/archive/master.zip + +Ensure that you have the Haskell platform 2012.2 or later installed either through your favorite package manager (e.g., `apt-get install haskell-platform`) or by installing it stand-alone from the haskell homepage. -This is enough to get you the compiler up and running. In order execute -programs, you'll need to set up the Python backend. For that you'll need `Python -2.7+` and the following python modules +This is enough to get you the compiler up and running. But to execute +programs, you'll also need to set up the Python backend. For that +you'll need `Python 2.7+` and the following python modules $ easy_install ipython @@ -38,22 +53,38 @@ harness, just to make sure things built and are working: make tests -And read up on the documentation: - - make sphinxdoc - -Now you're ready to run a Dyna program. We've included a few for you to play -with in the `examples/` directory. +Now you're ready to run a Dyna program. * Run the python backend interactively (leave off the "-i" for bulk operation): ./dyna -i examples/papa2.dyna +* Work through the tutorial and homework exercises listed above. + +* Try other programs in the `examples/` directory, or write your own. + +Documentation is being added at + + make sphinxdoc + +Authors and Acknowledgments +--------------------------- + +This implementation was written primarily by Nathaniel Wesley Filardo +and Tim Vieira, advised by Jason Eisner. Thanks to other contributors +as well, particularly everyone who worked on the [previous +version](http://dyna.org). + +This work has been supported in part by the Human Language Technology +Center of Excellence and and by the National Science Foundation under +Grant No. 0964681. -Disclaimer ----------- +Licence and Disclaimer +---------------------- -This may someday be useful. For the moment, it doesn't do much except keep -us busy. If you're trying to make it do something and it breaks, you get to -keep all the pieces; see sections 15 - 17 of the AGPLv3 (available in -LICENSE). +This is work in progress. It is licensed under the AGPLv3 (available +in LICENSE). No guarantees of completeness or correctness are made at +this point. If you're trying to make it do something and it breaks, +you get to keep all the pieces; see sections 15-17 of the license. +However, please report any unknown issues via the [issue +tracker](https://github.com/nwf/dyna/issues). -- 2.50.1