Commit | Line | Data |
---|---|---|
633a2626 AT |
1 | # VVhitespace # |
2 | ||
3 | Welcome to VVhitespace! | |
4 | ||
5 | VVhitespace is a programming language that descends from Whitespace, making a | |
6 | small number of changes with the intention of *taming* the language, providing | |
7 | the tools necessary to build non-trivial, whitespace-only applications. As a | |
8 | proof of concept, the repository includes an implementation of Hunt the Wumpus | |
9 | written in VVhitespace. | |
10 | ||
11 | Only the characters `[Space]`, `[Tab]`, `[VTab]` and `[LineFeed]` have meaning | |
12 | in VVhitespace. All other characters are considered comments. For this reason, | |
13 | VVhitespace programs may be embedded in other documents, including in the | |
14 | source code of other languages. | |
15 | ||
16 | The language repository contains several parts: | |
17 | ||
18 | - A compiler, `vvc`, accepts human-readable VVhitespace source code and | |
19 | translates it to true VVhitespace code. | |
20 | ||
21 | - An interpreter, `vvi`, accepts true VVhitespace files as generated by `vvc` | |
22 | and executes them according to the language rules. | |
23 | ||
24 | - A library of useful functions including enhanced stack operations, printf, | |
25 | math operations including random number generation, heap operations, string | |
26 | manipulations and user interactions, and bitwise logic functions. | |
27 | ||
28 | - Hunt the Wumpus, a text game in which you explore a randomly connected set | |
29 | of caverns, avoiding deep pits and giant cave bats, all while shooting | |
30 | arrows at a Wumpus that wants to eat a tasty, meaty human like yourself! | |
31 | ||
32 | - Examples including code commentary that demonstrate VVhitespace and the | |
33 | stdlib. | |
34 | ||
35 | - Tests for both the VVhitespace language and the stdlib. Intended to | |
36 | increase confidence for users that want to tinker with the internals, both | |
37 | test suites come with a README explaining how to run the tests and extend them | |
38 | as necessary. | |
39 | ||
40 | Obtain VVhitespace at <https://git.subgeniuskitty.com/vvhitespace/.git>. | |
41 | ||
42 | See `README.md` for more information. | |
43 |