X-Git-Url: http://git.subgeniuskitty.com/vvhitespace/.git/blobdiff_plain/f4523a366b4cdb86a137ca9edcefde923263d126..92a92075b5ccdcd473eb720b13e946fb5d9e1985:/README.md diff --git a/README.md b/README.md new file mode 100644 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`.