Index: doc/theses/mike_brooks_MMath/programs/sharing-demo.cfa
===================================================================
--- doc/theses/mike_brooks_MMath/programs/sharing-demo.cfa	(revision 489d3ba602f6e02e57ae61a5328cf048be74914a)
+++ doc/theses/mike_brooks_MMath/programs/sharing-demo.cfa	(revision b26ab30d8ba28adf1dccf63a7eac80ff42a90df3)
@@ -11,7 +11,7 @@
 //	sout | "Consider two strings @s1@ and @s1a@ that are in an aliasing relationship, and a third, @s2@, made by a simple copy from @s1@.";
 
-	#define S1 string s1  = "abc"
-	#define S1A string s1a = s1`shareEdits
-	#define S2 string s2  = s1
+	#define S1 string s1 = "abc"
+	#define S1A string s1a = s1`share
+	#define S2 string s2 = s1a
 	S1;
 	S1A;
@@ -23,34 +23,34 @@
 	open( outfile, "build/sharing1.tex" );
 	outfile | "\\begin{cquote}";
-	outfile | "\\begin{tabular}{@{}llll@{}}";
+	outfile | "\\begin{tabular}{@{}rlll@{}}";
 	outfile | "\t\t\t& @s1@\t& @s1a@\t& @s2@\t\\\\";
-	outfile | xstr(S1) | "\t\\\\";
-	outfile | xstr(S1A) | "\t\\\\";
-	outfile | xstr(S2) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2;
-	outfile | "\\end{tabular}";
-	outfile | "\\end{cquote}";
-	close( outfile );
-
-//	sout | "Aliasing (@`shareEdits@) means that changes flow in both directions; with a simple copy, they do not.";
+	outfile | xstr(S1) | "\t& @\"" | s1 | "\"@\t\\\\";
+	outfile | xstr(S1A) | "\t& \t& @\"" | s1a | "\"@\t\\\\";
+	outfile | xstr(S2) | "\t& \t& \t& @\"" | s2 | "\"@";
+	outfile | "\\end{tabular}";
+	outfile | "\\end{cquote}";
+	close( outfile );
+
+//	sout | "Aliasing (@`share@) means that changes flow in both directions; with a simple copy, they do not.";
 	open( outfile, "build/sharing2.tex" );
 	outfile | "\\begin{cquote}";
-	outfile | "\\begin{tabular}{@{}llll@{}}";
+	outfile | "\\begin{tabular}{@{}rlll@{}}";
 	outfile | "\t\t& @s1@\t& @s1a@\t& @s2@\t\\\\";
-	outfile | "\\multicolumn{1}{r}{initial} & " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
-
-	#define S1s1 s1 [1] = '+'
+	outfile | "\\multicolumn{1}{r}{initial} & @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
+
+	#define S1s1 s1[1] = '+'
 	S1s1;
 	assert( s1 == "a+c" );
-	outfile | xstr(S1s1) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(S1s1) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S1As1 s1a[1] = '-'
 	S1As1;
 	assert( s1a == "a-c" );
-	outfile | xstr(S1As1) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
-
-	#define S2s1 s2 [1] = '|'
+	outfile | xstr(S1As1) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
+
+	#define S2s1 s2[1] = '|'
 	S2s1;
 	assert( s2 == "a|c" );
-	outfile | xstr(S2s1) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2;
+	outfile | xstr(S2s1) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@";
 	outfile | "\\end{tabular}";
 	outfile | "\\end{cquote}";
@@ -61,22 +61,22 @@
 	open( outfile, "build/sharing3.tex" );
 	outfile | "\\begin{cquote}";
-	outfile | "\\begin{tabular}{llll}";
+	outfile | "\\begin{tabular}{@{}rlll@{}}";
 	outfile | "\t\t& @s1@\t& @s1a@\t& @s2@\t\\\\";
-	outfile | "\\multicolumn{1}{r}{initial} & " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | "\\multicolumn{1}{r}{initial} & @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S1qrs s1  = "qrs"
 	S1qrs;
 	assert( s1 == "qrs" );
-	outfile | xstr(S1qrs) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(S1qrs) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S1Atuv s1a = "tuv"
 	S1Atuv;
 	assert( s1a == "tuv" );
-	outfile | xstr(S1Atuv) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(S1Atuv) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S2wxy s2  = "wxy"
 	S2wxy;
 	assert( s2 == "wxy" );
-	outfile | xstr(S2wxy) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2;
+	outfile | xstr(S2wxy) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@";
 	outfile | "\\end{tabular}";
 	outfile | "\\end{cquote}";
@@ -87,7 +87,7 @@
 	open( outfile, "build/sharing4.tex" );
 	outfile | "\\begin{cquote}";
-	outfile | "\\begin{tabular}{llll}";
+	outfile | "\\begin{tabular}{@{}rlll@{}}";
 	outfile | "\t\t& @s1@\t& @s1a@\t& @s2@\t\\\\";
-	outfile | "\\multicolumn{1}{r}{initial} & " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | "\\multicolumn{1}{r}{initial} & @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S1S2 s1  = s2
@@ -96,5 +96,5 @@
 	assert( s1a == "wxy" );
 	assert( s2 == "wxy" );
-	outfile | xstr(S1S2) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(S1S2) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S1aaa s1  = "aaa"
@@ -103,5 +103,5 @@
 	assert( s1a == "aaa" );
 	assert( s2 == "wxy" );
-	outfile | xstr(S1aaa) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(S1aaa) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S2S1 s2  = s1
@@ -110,5 +110,5 @@
 	assert( s1a == "aaa" );
 	assert( s2 == "aaa" );
-	outfile | xstr(S2S1) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(S2S1) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S2bbb s2  = "bbb"
@@ -117,5 +117,5 @@
 	assert( s1a == "aaa" );
 	assert( s2 == "bbb" );
-	outfile | xstr(S2bbb) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(S2bbb) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S2S1a s2  = s1a
@@ -124,5 +124,5 @@
 	assert( s1a == "aaa" );
 	assert( s2 == "aaa" );
-	outfile | xstr(S2S1a) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(S2S1a) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S2ccc s2  = "ccc"
@@ -131,5 +131,5 @@
 	assert( s1a == "aaa" );
 	assert( s2 == "ccc" );
-	outfile | xstr(S2ccc) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(S2ccc) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define S1xxx s1  = "xxx"
@@ -138,5 +138,5 @@
 	assert( s1a == "xxx" );
 	assert( s2 == "ccc" );
-	outfile | xstr(S1xxx) | "\t& " | s1 | "\t& " | s1a | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(S1xxx) | "\t& @\"" | s1 | "\"@\t& @\"" | s1a | "\"@\t& @\"" | s2 | "\"@";
 	outfile | "\\end{tabular}";
 	outfile | "\\end{cquote}";
@@ -149,31 +149,31 @@
 	open( outfile, "build/sharing5.tex" );
 	outfile | "\\begin{cquote}";
-	outfile | "\\begin{tabular}{llll}";
+	outfile | "\\begin{tabular}{@{}rlll@{}}";
 	outfile | "\t\t\t\t& @s1@\t& @s1_mid@\t& @s2@\t\\\\";
 
-	#define D2_s1_abcd string s1     = "abcd"
+	#define D2_s1_abcd string s1 = "abcd"
 	D2_s1_abcd;
-	outfile | xstr(D2_s1_abcd) | "\t\\\\";
-
-	#define D2_s1mid_s1 string s1_mid = s1(1,2)`shareEdits
+	outfile | xstr(D2_s1_abcd) | "\t& @\"" | s1 | "\"@\t\\\\";
+
+	#define D2_s1mid_s1 string s1_mid = s1(1,2)`share
 	D2_s1mid_s1;
-	outfile | xstr(D2_s1mid_s1) | "\t\\\\";
-
-	#define D2_s2_s1 string s2     = s1(1,2)
+	outfile | xstr(D2_s1mid_s1) | "\t& \t& @\"" | s1_mid | "\"@\t\\\\";
+
+	#define D2_s2_s1 string s2 = s1_mid(0,2)
 	D2_s2_s1;
 	assert( s1 == "abcd" );
 	assert( s1_mid == "bc" );
 	assert( s2 == "bc" );
-	outfile | xstr(D2_s2_s1) | "\t& " | s1 | "\t& " | s1_mid | "\t& " | s2 | "\t\\\\";
-	outfile | "\\end{tabular}";
-	outfile | "\\end{cquote}";
-	close( outfile );
-
-//	sout | "Again, @`shareEdits@ passes changes in both directions; copy does not.  Note the difference in index values, with the \\emph{b} position being 1 in the longer string and 0 in the shorter strings.  In the case of s1 aliasing with @s1_mid@, the very same character is being accessed by different postitions.";
+	outfile | xstr(D2_s2_s1) | "\t& \t& \t& @\"" | s2 | "\"@";
+	outfile | "\\end{tabular}";
+	outfile | "\\end{cquote}";
+	close( outfile );
+
+//	sout | "Again, @`share@ passes changes in both directions; copy does not.  Note the difference in index values, with the \\emph{b} position being 1 in the longer string and 0 in the shorter strings.  In the case of s1 aliasing with @s1_mid@, the very same character is being accessed by different postitions.";
 	open( outfile, "build/sharing6.tex" );
 	outfile | "\\begin{cquote}";
-	outfile | "\\begin{tabular}{llll}";
+	outfile | "\\begin{tabular}{@{}rlll@{}}";
 	outfile | "\t\t\t\t& @s1@\t& @s1_mid@\t& @s2@\t\\\\";
-	outfile | "\\multicolumn{1}{r}{initial} & " | s1 | "\t& " | s1_mid | "\t& " | s2 | "\t\\\\";
+	outfile | "\\multicolumn{1}{r}{initial} & @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define D2_s1_plus s1    [1] = '+'
@@ -182,5 +182,5 @@
 	assert( s1_mid == "+c" );
 	assert( s2 == "bc" );
-	outfile | xstr(D2_s1_plus) | "\t& " | s1 | "\t& " | s1_mid | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(D2_s1_plus) | "\t& @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define D2_s1mid_minus s1_mid[0] = '-'
@@ -189,5 +189,5 @@
 	assert( s1_mid == "-c" );
 	assert( s2 == "bc" );
-	outfile | xstr(D2_s1mid_minus) | "\t& " | s1 | "\t& " | s1_mid | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(D2_s1mid_minus) | "\t& @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define D2_s2_pipe s2    [0] = '|'
@@ -196,5 +196,5 @@
 	assert( s1_mid == "-c" );
 	assert( s2 == "|c" );
-	outfile | xstr(D2_s2_pipe) | "\t& " | s1 | "\t& " | s1_mid | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(D2_s2_pipe) | "\t& @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t& @\"" | s2 | "\"@\t";
 	outfile | "\\end{tabular}";
 	outfile | "\\end{cquote}";
@@ -204,7 +204,7 @@
 	open( outfile, "build/sharing7.tex" );
 	outfile | "\\begin{cquote}";
-	outfile | "\\begin{tabular}{llll}";
+	outfile | "\\begin{tabular}{@{}rlll@{}}";
 	outfile | "\t\t\t\t& @s1@\t& @s1_mid@\t& @s2@\t\\\\";
-	outfile | "\\multicolumn{1}{r}{initial} & " | s1 | "\t& " | s1_mid | "\t& " | s2 | "\t\\\\";
+	outfile | "\\multicolumn{1}{r}{initial} & @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define D2_s1mid_ff s1_mid = "ff"
@@ -213,5 +213,5 @@
 	assert( s1_mid == "ff" );
 	assert( s2 == "|c" );
-	outfile | xstr(D2_s1mid_ff) | "\t& " | s1 | "\t& " | s1_mid | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(D2_s1mid_ff) | "\t& @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t& @\"" | s2 | "\"@\t\\\\";
 
 	#define D2_s2_gg s2     = "gg"
@@ -220,5 +220,5 @@
 	assert( s1_mid == "ff" );
 	assert( s2 == "gg" );
-	outfile | xstr(D2_s2_gg) | "\t& " | s1 | "\t& " | s1_mid | "\t& " | s2 | "\t\\\\";
+	outfile | xstr(D2_s2_gg) | "\t& @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t& @\"" | s2 | "\"@\t";
 	outfile | "\\end{tabular}";
 	outfile | "\\end{cquote}";
@@ -232,11 +232,11 @@
 	open( outfile, "build/sharing8.tex" );
 	outfile | "\\begin{cquote}";
-	outfile | "\\begin{tabular}{lll}";
+	outfile | "\\begin{tabular}{@{}rll@{}}";
 	outfile | "\t\t\t\t& @s1@\t& @s1_mid@\t\\\\";
-	outfile | "\\multicolumn{1}{r}{initial} & " | s1 | "\t& " | s1_mid | "\t\\\\";
+	outfile | "\\multicolumn{1}{r}{initial} & @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t\\\\";
 
 	assert( s1 == "affd" );
 //	assert( s1_mid == "fc" );													 // ????????? bug?
-	outfile | xstr(D2_s2_gg) | "\t& " | s1 | "\t& " | s1_mid | "\t\\\\";
+//	outfile | xstr(D2_s2_gg) | "\t& @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t\\\\";
 
 	#define D2_s1mid_hhhh s1_mid = "hhhh"
@@ -244,5 +244,5 @@
 	assert( s1 == "ahhhhd" );
 	assert( s1_mid == "hhhh" );
-	outfile  | xstr(D2_s1mid_hhhh)  | "\t& " | s1 | "\t& " | s1_mid | "\t\\\\";
+	outfile  | xstr(D2_s1mid_hhhh)  | "\t& @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t\\\\";
 
 	#define D2_s1mid_i s1_mid = "i"
@@ -250,5 +250,5 @@
 	assert( s1 == "aid" );
 	assert( s1_mid == "i" );
-	outfile  | xstr(D2_s1mid_i)  | "\t& " | s1 | "\t& " | s1_mid | "\t\\\\";
+	outfile  | xstr(D2_s1mid_i)  | "\t& @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t\\\\";
 
 	#define D2_s1mid_empty s1_mid = ""
@@ -256,5 +256,5 @@
 	assert( s1 == "ad" );
 	// assert( s1_mid == "" );    ------ Should be so, but fails
-	outfile  | xstr(D2_s1mid_empty)  | "\t& " | s1 | "\t& " | s1_mid | "\t\\\\";
+	outfile  | xstr(D2_s1mid_empty)  | "\t& @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t\\\\";
 
 	#define D2_s1mid_jj s1_mid = "jj"
@@ -262,5 +262,5 @@
 	assert( s1 == "ajjd" );
 	assert( s1_mid == "jj" );
-	outfile  | xstr(D2_s1mid_jj)  | "\t& " | s1 | "\t& " | s1_mid | "\t\\\\";
+	outfile  | xstr(D2_s1mid_jj)  | "\t& @\"" | s1 | "\"@\t& @\"" | s1_mid | "\"@\t";
 	outfile | "\\end{tabular}";
 	outfile | "\\end{cquote}";
@@ -270,18 +270,19 @@
 	open( outfile, "build/sharing9.tex" );
 	outfile | "\\begin{cquote}";
-	outfile | "\\begin{tabular}{lllll}";
+	outfile | "\\begin{tabular}{@{}rllll@{}}";
 	outfile | "\t\t\t\t& @s1@\t& @s1_bgn@\t& @s1_mid@\t& @s1_end@\t\\\\";
-
-	#define D2_s1bgn_s1	string s1_bgn = s1(0, 1)`shareEdits
+	outfile | "\\multicolumn{1}{r}{initial} & @\"" | s1 | "\"@\t& & @\"" | s1_mid | "\"@\t\\\\";
+
+	#define D2_s1bgn_s1	string s1_bgn = s1(0, 1)`share
 	D2_s1bgn_s1;
-	outfile  | xstr(D2_s1bgn_s1)  | "\t\\\\";
-
-	#define D2_s1end_s1 string s1_end = s1(3, 1)`shareEdits
+	outfile  | xstr(D2_s1bgn_s1)  | "\t& \t& @\"" | s1_bgn | "\"@\t\\\\";
+
+	#define D2_s1end_s1 string s1_end = s1(3, 1)`share
 	D2_s1end_s1;
+	outfile  | xstr(D2_s1end_s1)  | "\t& \t& \t& \t& @\"" | s1_end | "\"@\t\\\\";
 	assert( s1 == "ajjd" );
 	assert( s1_bgn == "a" );
 	assert( s1_mid == "jj" );
 	assert( s1_end == "d" );
-	outfile  | xstr(D2_s1end_s1)  | "\t& " | s1 | "\t& " | s1_bgn | "\t& " | s1_mid | "\t& " | s1_end | "\t\\\\";
 
 	#define D1_s1bgn_zzz s1_bgn = "zzzz"
@@ -291,5 +292,5 @@
 	assert( s1_mid == "jj" );
 	assert( s1_end == "d" );
-	outfile  | xstr(D1_s1bgn_zzz)  | "\t& " | s1 | "\t& " | s1_bgn | "\t& " | s1_mid | "\t& " | s1_end | "\t\\\\";
+	outfile  | xstr(D1_s1bgn_zzz)  | "\t& @\"" | s1 | "\"@\t& @\"" | s1_bgn | "\"@\t& @\"" | s1_mid | "\"@\t& @\"" | s1_end | "\"@\t";
 	outfile | "\\end{tabular}";
 	outfile | "\\end{cquote}";
@@ -299,8 +300,9 @@
 	open( outfile, "build/sharing10.tex" );
 	outfile | "\\begin{cquote}";
-	outfile | "\\begin{tabular}{llllll}";
+	outfile | "\\begin{tabular}{@{}rlllll@{}}";
 	outfile | "\t\t\t\t& @s1@\t& @s1_bgn@\t& @s1_crs@\t& @s1_mid@\t& @s1_end@\t\\\\";
-
-	#define D2_s1crs_s1 string s1_crs = s1(3, 2)`shareEdits
+	outfile | "\\multicolumn{1}{r}{initial} & @\"" | s1 | "\"@\t& @\"" | s1_bgn | "\"@\t& & @\"" | s1_mid | "\"@\t& @\"" | s1_end | "\"@\t\\\\";
+
+	#define D2_s1crs_s1 string s1_crs = s1(3, 2)`share
 	D2_s1crs_s1;
 	assert( s1 == "zzzzjjd" );
@@ -309,5 +311,5 @@
 	assert( s1_mid == "jj" );
 	assert( s1_end == "d" );
-	outfile  | xstr(D2_s1crs_s1)  | "\t& " | s1 | "\t& " | s1_bgn | "\t& " | s1_crs | "\t& " | s1_mid | "\t& " | s1_end | "\t\\\\";
+	outfile  | xstr(D2_s1crs_s1)  | "\t& \t& \t& @\"" | s1_crs | "\"@\t\\\\";
 
 	#define D2_s1crs_ppp s1_crs = "+++"
@@ -318,5 +320,5 @@
 	assert( s1_mid == "j" );
 	assert( s1_end == "d" );
-	outfile  | xstr(D2_s1crs_ppp)  | "\t& " | s1 | "\t& " | s1_bgn | "\t& " | s1_crs | "\t& " | s1_mid | "\t& " | s1_end | "\t\\\\";
+	outfile  | xstr(D2_s1crs_ppp)  | "\t& @\"" | s1 | "\"@\t& @\"" | s1_bgn | "\"@\t& @\"" | s1_crs | "\"@\t& @\"" | s1_mid | "\"@\t& @\"" | s1_end | "\"@\t";
 	outfile | "\\end{tabular}";
 	outfile | "\\end{cquote}";
@@ -326,6 +328,6 @@
 
 	string word = "Phi";
-	string consonants = word(0,2)`shareEdits;
-	string miniscules = word(1,2)`shareEdits;
+	string consonants = word(0,2)`share;
+	string miniscules = word(1,2)`share;
 	assert( word == "Phi" );
 	assert( consonants == "Ph" );
@@ -340,7 +342,7 @@
 
 	string all = "They said hello again";
-	string greet     = all(10,5)`shareEdits;
-	string greet_bgn = all(10,1)`shareEdits;
-	string greet_end = all(14,1)`shareEdits;
+	string greet     = all(10,5)`share;
+	string greet_bgn = all(10,1)`share;
+	string greet_end = all(14,1)`share;
 
 	assert( all == "They said hello again" );
