anchor.diff:  .Interpolation Syntax
   [width="90%",cols="1,9",options="header"]
   |=============================================================================
  -|Syntax					|Effect
  -|+$(VAR:f)+				|Convert to forward slashes (+/+)
  -|+$(VAR:b)+				|Convert to backward slashes (+\+)
  -|+$(VAR:u)+				|Convert to upper case
  -|+$(VAR:l)+				|Convert to lower case
  -|+$(VAR:p<prefix>)+		|Prefix all values with the string +<prefix>+
  -|+$(VAR:s<suffix>)+		|Suffix all values with the string +<suffix>+
  -|+$(VAR:[<index>])+		|Select the item at the (one-based) +index+
  -|+$(VAR:j<sep>)+		|Join all values with +<sep>+ as a separator rather than space
  -|+$(VAR:A<suffix>)+		|Suffix all values with +<suffix>+ unless it is already there
  -|+$(VAR:P<prefix>)+		|Prefix all values with +<prefix>+ unless it is already there
  +|Syntax                 |Effect
  +|+$(VAR:f)+             |Convert to forward slashes (+/+)
  +|+$(VAR:b)+             |Convert to backward slashes (+\+)
  +|+$(VAR:u)+             |Convert to upper case
  +|+$(VAR:l)+             |Convert to lower case
  +|+$(VAR:p<prefix>)+     |Prefix all values with the string +<prefix>+
  +|+$(VAR:s<suffix>)+     |Suffix all values with the string +<suffix>+
  +|+$(VAR:[<index>])+     |Select the item at the (one-based) +index+
  +|+$(VAR:j<sep>)+        |Join all values with +<sep>+ as a separator rather than space
  +|+$(VAR:A<suffix>)+     |Suffix all values with +<suffix>+ unless it is already there
  +|+$(VAR:P<prefix>)+     |Prefix all values with +<prefix>+ unless it is already there
   |=============================================================================
   
   These interpolation options can be combined arbitrarily by tacking on several
  
positive.code: 
  [width="90%",cols="1,9"]
  |=============================================================================
  |+FOO+				|+"String"+
  |+BAR+				|+{ "A", "B", "C" }+
  |=============================================================================
  
  Then interpolating the following strings will give the associated result:
  
  [width="90%",cols="1,9",options="header"]
  |=============================================================================
  |Expression				|Resulting String
  |`$(FOO)`				|`String`
  |`$(FOO:u)`				|`STRING`
  |`$(FOO:l)`				|`string`
  |`$(FOO:p__)`			|`__String`
  |`$(FOO:p__:s__)`		|`__String__`
  |`$(BAR)`				|`A B C`
  |`$(BAR:u)`				|`A B C`
  |`$(BAR:l)`				|`a b c`
  |`$(BAR:p__)`			|`__A __B __C`
  |`$(BAR:p__:s__:j!)`	|`__A__!__B__!__C__`
  |`$(BAR:p\::s!)`		|`:A! :B! :C!`
  |`$(BAR:AC)`			|`AC BC C`
  |=============================================================================
  
  === Nested Interpolation ===
  
negative.code: // vim: ts=4 expandtab
  
  Tundra, a build system
  ======================
  