Index: libcfa/src/enum.cfa
===================================================================
--- libcfa/src/enum.cfa	(revision 253d0b426fac00a1ce140f9aa26585e536ac6a14)
+++ libcfa/src/enum.cfa	(revision 5eb3f65e95375f1be49b0bbe3338a9b4b1d26c67)
@@ -6,17 +6,17 @@
 forall(ostype & | basic_ostream(ostype), E, V| CfaEnum(E, V))
 ostype & ?|?(ostype& os, E e) {
-    return os | type_name(e) | "." | labelE(e);
+    return os | type_name(e) | "." | label(e);
 }
 
 forall(ostype & | basic_ostream(ostype), E| CfaEnum(E, quasi_void))
 ostype & ?|?(ostype& os, E e) {
-    return os | type_name(e) | "." | labelE(e);
+    return os | type_name(e) | "." | label(e);
 }
 
 forall(ostype & | basic_ostream(ostype), E, V| CfaEnum(E, V)) {
-    int ?==?(E l, E r) { return posE(l) == posE(r); }
-    int ?<=?(E l, E r) { return posE(l) <= posE(r); }
-    int ?>=?(E l, E r) { return posE(l) >= posE(r); }
-    int ?<?(E l, E r) { return posE(l) < posE(r); }
-    int ?>?(E l, E r) { return posE(l) > posE(r); }
+    int ?==?(E l, E r) { return posn(l) == posn(r); }
+    int ?<=?(E l, E r) { return posn(l) <= posn(r); }
+    int ?>=?(E l, E r) { return posn(l) >= posn(r); }
+    int ?<?(E l, E r) { return posn(l) < posn(r); }
+    int ?>?(E l, E r) { return posn(l) > posn(r); }
 }
Index: libcfa/src/enum.hfa
===================================================================
--- libcfa/src/enum.hfa	(revision 253d0b426fac00a1ce140f9aa26585e536ac6a14)
+++ libcfa/src/enum.hfa	(revision 5eb3f65e95375f1be49b0bbe3338a9b4b1d26c67)
@@ -17,11 +17,11 @@
 // Design one
 forall(E, V | Serial(E)) trait CfaEnum {
-    char* labelE(E e);
-    unsigned int posE(E e);
-    V valueE(E e);
-    char* type_name(E e);
+    char * label(E e);
+    unsigned int posn(E e);
+    V value(E e);
+    char * type_name(E e);
 };
 
-forall(ostype & | basic_ostream(ostype), E, V| CfaEnum(E, V))
+forall(ostype & | basic_ostream(ostype), E, V | CfaEnum(E, V))
 ostype & ?|?(ostype&, E);
 
@@ -31,10 +31,10 @@
 // Design two <- should go for this if we have change the cost model
 // forall(E | Serial(E)) trait CfaEnum {
-//     char* labelE(E e);
-//     unsigned int posE(E e);
+//     char * label(E e);
+//     unsigned int posn(E e);
 // };
 
 // forall(E, V| CfaEnum(E)) trait TypedEnum {
-//     V valueE(E e);
+//     V value(E e);
 // };
 
Index: src/ResolvExpr/CandidateFinder.cpp
===================================================================
--- src/ResolvExpr/CandidateFinder.cpp	(revision 253d0b426fac00a1ce140f9aa26585e536ac6a14)
+++ src/ResolvExpr/CandidateFinder.cpp	(revision 5eb3f65e95375f1be49b0bbe3338a9b4b1d26c67)
@@ -9,7 +9,7 @@
 // Author           : Aaron B. Moss
 // Created On       : Wed Jun 5 14:30:00 2019
-// Last Modified By : Andrew Beach
-// Last Modified On : Wed Mar 16 11:58:00 2022
-// Update Count     : 3
+// Last Modified By : Peter A. Buhr
+// Last Modified On : Sat Jun 22 08:07:26 2024
+// Update Count     : 4
 //
 
@@ -909,10 +909,10 @@
 			auto location = expr->location;
 			auto callExpr = new ast::UntypedExpr(
-				location, new ast::NameExpr( location, "valueE" ), {expr}
+				location, new ast::NameExpr( location, "value" ), {expr}
 			);
 			finder.find( callExpr );
 			CandidateList winners = findMinCost( finder.candidates );
 			if (winners.size() != 1) {
-				SemanticError( callExpr, "Ambiguous expression in valueE..." );
+				SemanticError( callExpr, "Ambiguous expression in value..." );
 			}
 			CandidateRef & choice = winners.front();
Index: src/Validate/ImplementEnumFunc.cpp
===================================================================
--- src/Validate/ImplementEnumFunc.cpp	(revision 253d0b426fac00a1ce140f9aa26585e536ac6a14)
+++ src/Validate/ImplementEnumFunc.cpp	(revision 5eb3f65e95375f1be49b0bbe3338a9b4b1d26c67)
@@ -175,5 +175,5 @@
 ast::FunctionDecl* EnumAttrFuncGenerator::genPosnProto() const {
     return genProto(
-        "posE",
+        "posn",
         {new ast::ObjectDecl(getLocation(), "_i", new ast::EnumInstType(decl))},
         {new ast::ObjectDecl(getLocation(), "_ret",
@@ -183,5 +183,5 @@
 ast::FunctionDecl* EnumAttrFuncGenerator::genLabelProto() const {
 	return genProto(
-		"labelE",
+		"label",
 		{new ast::ObjectDecl(getLocation(), "_i", new ast::EnumInstType(decl))},
 		{new ast::ObjectDecl(
@@ -193,5 +193,5 @@
 	if (decl->base)
 		return genProto(
-			"valueE",
+			"value",
 			{new ast::ObjectDecl(getLocation(), "_i", new ast::EnumInstType(decl))},
 			{new ast::ObjectDecl(getLocation(), "_ret",
@@ -203,5 +203,5 @@
 ast::FunctionDecl* EnumAttrFuncGenerator::genQuasiValueProto() const {
 	return genProto(
-		"valueE",
+		"value",
 		{new ast::ObjectDecl(getLocation(), "_i", new ast::EnumInstType(decl))},
 		{new ast::ObjectDecl(getLocation(), "_ret",
@@ -254,5 +254,5 @@
 	auto param = params.front();
 	ast::UntypedExpr* untyped = ast::UntypedExpr::createCall(
-		func->location, "posE", { new ast::VariableExpr(func->location, param) });
+		func->location, "posn", { new ast::VariableExpr(func->location, param) });
 	func->stmts = new ast::CompoundStmt(
 		func->location, {new ast::ReturnStmt(func->location, untyped)}
Index: tests/enum_tests/enumInlineValue.cfa
===================================================================
--- tests/enum_tests/enumInlineValue.cfa	(revision 253d0b426fac00a1ce140f9aa26585e536ac6a14)
+++ tests/enum_tests/enumInlineValue.cfa	(revision 5eb3f65e95375f1be49b0bbe3338a9b4b1d26c67)
@@ -38,7 +38,7 @@
 // Note: variable name (cat in this case) cannot be overloaded with those declared in enum,
 // Probably for the same reason as const overloading problem
-// i.e. int identity_t(enum ACD a) would not work as the valueE(a) is ambigious currently
+// i.e. int identity_t(enum ACD a) would not work as the value(a) is ambigious currently
 int identity_t(enum ACD cat) {
-    return valueE(cat);
+    return value(cat);
 }
 
@@ -47,20 +47,20 @@
     // Because Inline introduce ambiguity on symbols
     sout | "Symbols (enumerator) should have the same values:" |nl;
-    sout | "Symbol a: (10) " | valueE(A.a) | "," | valueE(AB.a) | "," | valueE(ACD.a) | nl;
-    sout | "Symbol b: (20) " | valueE(B.b) | "," | valueE(AB.b) | nl;
-    sout | "Symbol ab: (30) " | valueE(AB.ab) | nl;
-    sout | "Symbol c: (40) " | valueE(C.c) | "," | valueE(CD.c) | "," | valueE(ACD.c) | nl;
-    sout | "Symbol d: (50) " | valueE(D.d) | "," | valueE(CD.d) | "," | valueE(ACD.d) | nl;
-    sout | "Symbol cd: (60) " | valueE(CD.cd) | "," | valueE(ACD.cd) | nl;
-    sout | "Symbol acd: (70) " | valueE(ACD.acd) | nl;
+    sout | "Symbol a: (10) " | value(A.a) | "," | value(AB.a) | "," | value(ACD.a) | nl;
+    sout | "Symbol b: (20) " | value(B.b) | "," | value(AB.b) | nl;
+    sout | "Symbol ab: (30) " | value(AB.ab) | nl;
+    sout | "Symbol c: (40) " | value(C.c) | "," | value(CD.c) | "," | value(ACD.c) | nl;
+    sout | "Symbol d: (50) " | value(D.d) | "," | value(CD.d) | "," | value(ACD.d) | nl;
+    sout | "Symbol cd: (60) " | value(CD.cd) | "," | value(ACD.cd) | nl;
+    sout | "Symbol acd: (70) " | value(ACD.acd) | nl;
 
     sout | "Casting/Upcasting:" | nl;
-    sout | "Symbol a: (10) " | valueE((A)A.a) | "," | valueE((AB)A.a) | "," | valueE((ACD)A.a) | nl;
-    sout | "Symbol b: (20) " | valueE((B)B.b) | "," | valueE((AB)B.b) | nl;
-    sout | "Symbol ab: (30) " | valueE((AB)AB.ab) | nl;
-    sout | "Symbol c: (40) " | valueE((C)C.c) | "," | valueE((CD)C.c) | "," | valueE((ACD)C.c) | "," | valueE((CD)CD.c)| "," | valueE((ACD)CD.c) | nl;
-    sout | "Symbol d: (50) " | valueE((D)D.d) | "," | valueE((CD)D.d) | "," | valueE((ACD)D.d) | "," | valueE((ACD)CD.d) | nl;
-    sout | "Symbol cd: (60) " | valueE((CD)CD.cd) | "," | valueE((ACD)CD.cd) | nl;
-    sout | "Symbol acd: (70) " | valueE((ACD)ACD.acd) | nl;
+    sout | "Symbol a: (10) " | value((A)A.a) | "," | value((AB)A.a) | "," | value((ACD)A.a) | nl;
+    sout | "Symbol b: (20) " | value((B)B.b) | "," | value((AB)B.b) | nl;
+    sout | "Symbol ab: (30) " | value((AB)AB.ab) | nl;
+    sout | "Symbol c: (40) " | value((C)C.c) | "," | value((CD)C.c) | "," | value((ACD)C.c) | "," | value((CD)CD.c)| "," | value((ACD)CD.c) | nl;
+    sout | "Symbol d: (50) " | value((D)D.d) | "," | value((CD)D.d) | "," | value((ACD)D.d) | "," | value((ACD)CD.d) | nl;
+    sout | "Symbol cd: (60) " | value((CD)CD.cd) | "," | value((ACD)CD.cd) | nl;
+    sout | "Symbol acd: (70) " | value((ACD)ACD.acd) | nl;
 
     sout | "Function Call:" | nl;
Index: tests/enum_tests/position.cfa
===================================================================
--- tests/enum_tests/position.cfa	(revision 253d0b426fac00a1ce140f9aa26585e536ac6a14)
+++ tests/enum_tests/position.cfa	(revision 5eb3f65e95375f1be49b0bbe3338a9b4b1d26c67)
@@ -17,7 +17,7 @@
     Colour c2 = fishy;
 
-    sout | "Compile Time: blue value: " | valueE(Colour.Blue) | ", position: " | posE(Colour.Blue) | ", label: " | labelE(Colour.Blue) | ", default return value: " | Colour.Blue;
-    sout | "Runtime: fishy value: " | valueE(fishy) | ", position: " | posE(fishy) | ", label: " | labelE(fishy) | ", default return value: " | fishy;
-    sout | "Runtime: C2 value: " | valueE(c2) | ", position: " | posE(c2) | ", label: " | labelE(c2) | ", default return value: " | c2;
+    sout | "Compile Time: blue value: " | value(Colour.Blue) | ", position: " | posn(Colour.Blue) | ", label: " | label(Colour.Blue) | ", default return value: " | Colour.Blue;
+    sout | "Runtime: fishy value: " | value(fishy) | ", position: " | posn(fishy) | ", label: " | label(fishy) | ", default return value: " | fishy;
+    sout | "Runtime: C2 value: " | value(c2) | ", position: " | posn(c2) | ", label: " | label(c2) | ", default return value: " | c2;
     Colour.Red;
     char * ao = Colour.Red;
Index: tests/enum_tests/voidEnum.cfa
===================================================================
--- tests/enum_tests/voidEnum.cfa	(revision 253d0b426fac00a1ce140f9aa26585e536ac6a14)
+++ tests/enum_tests/voidEnum.cfa	(revision 5eb3f65e95375f1be49b0bbe3338a9b4b1d26c67)
@@ -28,6 +28,5 @@
     sout | b;
     
-    sout | labelE(v_1);
-    sout | labelE(v_2);
-
+    sout | label(v_1);
+    sout | label(v_2);
 }
