Updated all the READMEs for VVhitespace.
[vvhitespace] / README.md
diff --git a/README.md b/README.md
new file mode 100644 (file)
index 0000000..d0ef628
--- /dev/null
+++ b/README.md
@@ -0,0 +1,39 @@
+# Overview #
+
+Welcome to the VVhitespace language. This repository provides two main tools.
+
+A compiler, `vvc`, accepts human-readable VVhitespace source code and translates
+it to true VVhitespace code. VVhitespace code is represented with the *whitespace
+characters* `[tTvVsSnN]` corresponding to `[Tab]`, `[Vtab]`, `[Space]`,
+`[Newline]`, respectively. The first character on a line which is not from this
+set begins a comment which ends with the line. See the standard library for
+examples in this style.
+
+An interpreter, `vvi`, accepts true VVhitespace files as generated by `vvc` and
+executes them according to the rules in `reference.md`.
+
+
+# Instructions #
+
+To build the VVhitespace software, simply run `make` in the top level directory.
+This will produce two binaries, `vvc` for compiling human-readable
+pseudo-vvhitespace into true vvhitespace, and `vvi` for interpreting/executing
+vvhitespace programs.
+
+Use these two programs to build and run your VVS programs:
+
+    vvc -i your_code.pvvs -o output_file.vvs
+    vvi -i output_file.vvs
+
+
+# Examples #
+
+The `examples/` folder contains examples with Makefiles. Simply `cd` into an
+example and `make run` to build and execute it. Don't forget to build `vvc`
+and `vvi` first! More details can be found in `examples/README.md`.
+
+
+# Standard Library #
+
+A standard library provides a few convenience functions. More details can be found
+in `stdlib/README.md`. A working example can be found in `examples/hello-stdlib`.