Correcting braindead commits.
[vvhitespace] / rationale.md
diff --git a/rationale.md b/rationale.md
new file mode 100644 (file)
index 0000000..e2c5156
--- /dev/null
@@ -0,0 +1,34 @@
+VVhitespace is descended from Whitespace, adding a vertical tab to the language
+along with some restrictions to ease implementation. The name is intended to
+embrace the spirit of Whitespace's visual incomprehensibility.
+
+Since Whitespace ignores [VTab] as a comment character, and since the
+Whitespace VM is a superset of the VVhitespace VM, all valid VVhitespace
+programs are also valid Whitespace programs.
+
+Locating a Whitespace interpreter capable of running all valid Whitespace
+programs is left as an exercise for the reader. For the inquisitive, the
+following program, read top-down, is both a valid VVhitespace and Whitespace
+program. Does it terminate or infinitely loop?
+
+[Space]
+[Space]
+[Space]
+[Tab]
+[LF]
+[LF]
+[Space]
+[LF]
+[Space]
+[Tab]
+[LF]
+[LF]
+[Space]
+[Space]
+[VTab]
+[Space]
+[Tab]
+[LF]
+[LF]
+[LF]
+[LF]