]> hydra-www.ietfng.org Git - dyna2/commitdiff
Tidy README.md a bit
authorNathaniel Wesley Filardo <nwf@cs.jhu.edu>
Wed, 5 Jun 2013 06:59:01 +0000 (02:59 -0400)
committerNathaniel Wesley Filardo <nwf@cs.jhu.edu>
Wed, 5 Jun 2013 06:59:01 +0000 (02:59 -0400)
README.md

index 9c59a306960564742c04a8afbd1ee68876242b70..288deead4c589476dba70e535d8132065503b077 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,16 +1,14 @@
 An overview of the source tree
 ------------------------------
 
+* docs/sphinx/         -- Documentation in reST format for sphinx
 * examples/            -- Dyna source programs
-    *  expected/       -- Expected output for self-tests.  Named by program and backend, both.
-* external/
-    * damsl-k3         -- The DAMSL K3 tree, tracked as a git submodule.
+    *  expected/       -- Expected output for self-tests.
 * misc/                -- Pretty much what it says on the tin
 * src/Dyna/
     * Analysis         -- The heart of the compiler
         * Mode         -- A re-implementation of the Mercury mode system
     * Backend          -- Compilation to target languages
-        * K3           -- An AST and printer for K3, done in finally-tagless style.
         * Python       -- A Python code generator
     * Main             -- Dyna compiler drivers (main and test) and definitions used throughout the pipeline
     * ParserHS         -- the Haskell front-end parser and selftests
@@ -22,48 +20,34 @@ Building
 
 First, ensure that you have the Haskell platform 2012.2 or later installed,
 either through your favorite package manager or by installing it
-stand-alone.  You should probably run
+stand-alone.  You'll want to have the following programs installed, too:
 
-    cabal update
-
-before proceeding, just to make sure that your package database is
-up-to-date.  Some of our transitive dependencies assume that you have
-`alex` and `happy` available -- either fetch those from your package manager
-or add `~/.cabal/bin` to your `PATH` and run
-
-    cabal install alex happy
-
-Then fetch, build, and install any dependencies (for the
-moment, we seem to be doing OK with vanilla upstreams!)
+    * Python 2.7 or compatible
+    * IPython
+    * Pygments (for pretty code output in our compiler-debugging tools)
+    * graphviz
 
-    make deps
+You should probably run
 
-Build Dyna:
+    cabal update
 
-    make build
+before proceeding, just to make sure that your package database is
+up-to-date.  Running
 
-(If that doesn't work, you might try `make ghcbuild` which ignores the Cabal
-infrastructure.  If you get an error about the `ghc-prim` package, it means
-that your compiler is older than what I've tested on; you may be able to
-make things work by dropping the lower bound on the package in dyna.cabal.)
+    make
 
-You'll want to have the following programs installed, too:
+will then build dependencies and the Dyna executable.  Run the test harness,
+just to make sure things built and are working OK:
 
-    * Python 2.7 or compatible
-    * IPython
-    * Pygments (for pretty code output in our compiler-debugging tools)
+    make tests
 
-Run the test harness:
+And read up on the documentation:
 
-    make tests
+    make sphinxdoc
 
 At this point, the code is still rather "in the works" so you probably want
 to...
 
-* load some module in GHCi; for example:
-
-        ghci -isrc Dyna.ParserHS.Parser
-
 * Run the python backend interactively (leave off the "-i" for bulk
 operation):
 
@@ -73,6 +57,10 @@ operation):
 
         ./debug examples/papa2.dyna
 
+* load some module in GHCi; for example:
+
+        ghci -isrc Dyna.ParserHS.Parser
+
 Disclaimer
 ----------