c_src: regenerate
[nit.git] / c_src / nitc__separate_erasure_compiler.sep.2.c
similarity index 53%
rename from c_src/nit__separate_erasure_compiler.sep.2.c
rename to c_src/nitc__separate_erasure_compiler.sep.2.c
index 1440b54..3d45580 100644 (file)
@@ -1,6 +1,6 @@
-#include "nit__separate_erasure_compiler.sep.0.h"
+#include "nitc__separate_erasure_compiler.sep.0.h"
 /* method separate_erasure_compiler#SeparateErasureCompilerVisitor#type_test for (self: SeparateErasureCompilerVisitor, RuntimeVariable, MType, String): RuntimeVariable */
-val* nit___nit__SeparateErasureCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__type_test(val* self, val* p0, val* p1, val* p2) {
+val* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__type_test(val* self, val* p0, val* p1, val* p2) {
 val* var /* : RuntimeVariable */;
 val* var_value /* var value: RuntimeVariable */;
 val* var_mtype /* var mtype: MType */;
@@ -10,15 +10,15 @@ static val* varonce;
 static val* varonce2;
 val* var3 /* : String */;
 char* var4 /* : NativeString */;
-val* var5 /* : FlatString */;
+val* var5 /* : String */;
 static val* varonce6;
 val* var7 /* : String */;
 char* var8 /* : NativeString */;
-val* var9 /* : FlatString */;
+val* var9 /* : String */;
 static val* varonce10;
 val* var11 /* : String */;
 char* var12 /* : NativeString */;
-val* var13 /* : FlatString */;
+val* var13 /* : String */;
 val* var14 /* : String */;
 val* var15 /* : String */;
 val* var16 /* : String */;
@@ -28,7 +28,7 @@ val* var_res /* var res: RuntimeVariable */;
 static val* varonce19;
 val* var20 /* : String */;
 char* var21 /* : NativeString */;
-val* var22 /* : FlatString */;
+val* var22 /* : String */;
 val* var23 /* : String */;
 val* var_cltype /* var cltype: String */;
 val* var25 /* : NativeArray[String] */;
@@ -36,16 +36,16 @@ static val* varonce24;
 static val* varonce26;
 val* var27 /* : String */;
 char* var28 /* : NativeString */;
-val* var29 /* : FlatString */;
+val* var29 /* : String */;
 static val* varonce30;
 val* var31 /* : String */;
 char* var32 /* : NativeString */;
-val* var33 /* : FlatString */;
+val* var33 /* : String */;
 val* var34 /* : String */;
 static val* varonce35;
 val* var36 /* : String */;
 char* var37 /* : NativeString */;
-val* var38 /* : FlatString */;
+val* var38 /* : String */;
 val* var39 /* : String */;
 val* var_idtype /* var idtype: String */;
 val* var41 /* : NativeArray[String] */;
@@ -53,18 +53,18 @@ static val* varonce40;
 static val* varonce42;
 val* var43 /* : String */;
 char* var44 /* : NativeString */;
-val* var45 /* : FlatString */;
+val* var45 /* : String */;
 static val* varonce46;
 val* var47 /* : String */;
 char* var48 /* : NativeString */;
-val* var49 /* : FlatString */;
+val* var49 /* : String */;
 val* var50 /* : String */;
 short int var51 /* : Bool */;
 short int var_maybe_null /* var maybe_null: Bool */;
 static val* varonce52;
 val* var53 /* : String */;
 char* var54 /* : NativeString */;
-val* var55 /* : FlatString */;
+val* var55 /* : String */;
 val* var_accept_null /* var accept_null: String */;
 short int var56 /* : Bool */;
 int cltype;
@@ -74,7 +74,7 @@ val* var59 /* : MType */;
 static val* varonce60;
 val* var61 /* : String */;
 char* var62 /* : NativeString */;
-val* var63 /* : FlatString */;
+val* var63 /* : String */;
 short int var64 /* : Bool */;
 int cltype65;
 int idtype66;
@@ -111,7 +111,7 @@ val* var109 /* : MType */;
 static val* varonce110;
 val* var111 /* : String */;
 char* var112 /* : NativeString */;
-val* var113 /* : FlatString */;
+val* var113 /* : String */;
 val* var114 /* : MType */;
 val* var116 /* : MType */;
 val* var117 /* : nullable StaticFrame */;
@@ -136,15 +136,15 @@ static val* varonce142;
 static val* varonce144;
 val* var145 /* : String */;
 char* var146 /* : NativeString */;
-val* var147 /* : FlatString */;
+val* var147 /* : String */;
 static val* varonce148;
 val* var149 /* : String */;
 char* var150 /* : NativeString */;
-val* var151 /* : FlatString */;
+val* var151 /* : String */;
 static val* varonce152;
 val* var153 /* : String */;
 char* var154 /* : NativeString */;
-val* var155 /* : FlatString */;
+val* var155 /* : String */;
 val* var156 /* : String */;
 val* var157 /* : String */;
 val* var158 /* : String */;
@@ -180,11 +180,11 @@ static val* varonce192;
 static val* varonce194;
 val* var195 /* : String */;
 char* var196 /* : NativeString */;
-val* var197 /* : FlatString */;
+val* var197 /* : String */;
 static val* varonce198;
 val* var199 /* : String */;
 char* var200 /* : NativeString */;
-val* var201 /* : FlatString */;
+val* var201 /* : String */;
 val* var202 /* : String */;
 val* var203 /* : MType */;
 val* var205 /* : MType */;
@@ -195,7 +195,7 @@ static val* varonce208;
 static val* varonce210;
 val* var211 /* : String */;
 char* var212 /* : NativeString */;
-val* var213 /* : FlatString */;
+val* var213 /* : String */;
 val* var214 /* : String */;
 val* var215 /* : String */;
 val* var_class_ptr /* var class_ptr: nullable Object */;
@@ -213,7 +213,7 @@ static val* varonce226;
 static val* varonce228;
 val* var229 /* : String */;
 char* var230 /* : NativeString */;
-val* var231 /* : FlatString */;
+val* var231 /* : String */;
 val* var232 /* : String */;
 val* var233 /* : String */;
 val* var235 /* : NativeArray[String] */;
@@ -221,11 +221,11 @@ static val* varonce234;
 static val* varonce236;
 val* var237 /* : String */;
 char* var238 /* : NativeString */;
-val* var239 /* : FlatString */;
+val* var239 /* : String */;
 static val* varonce240;
 val* var241 /* : String */;
 char* var242 /* : NativeString */;
-val* var243 /* : FlatString */;
+val* var243 /* : String */;
 val* var244 /* : String */;
 val* var245 /* : String */;
 short int var246 /* : Bool */;
@@ -236,7 +236,7 @@ static val* varonce249;
 static val* varonce251;
 val* var252 /* : String */;
 char* var253 /* : NativeString */;
-val* var254 /* : FlatString */;
+val* var254 /* : String */;
 val* var255 /* : MClass */;
 val* var257 /* : MClass */;
 val* var258 /* : String */;
@@ -246,11 +246,11 @@ static val* varonce260;
 static val* varonce262;
 val* var263 /* : String */;
 char* var264 /* : NativeString */;
-val* var265 /* : FlatString */;
+val* var265 /* : String */;
 static val* varonce266;
 val* var267 /* : String */;
 char* var268 /* : NativeString */;
-val* var269 /* : FlatString */;
+val* var269 /* : String */;
 val* var270 /* : MClass */;
 val* var272 /* : MClass */;
 val* var273 /* : String */;
@@ -260,11 +260,11 @@ static val* varonce275;
 static val* varonce277;
 val* var278 /* : String */;
 char* var279 /* : NativeString */;
-val* var280 /* : FlatString */;
+val* var280 /* : String */;
 static val* varonce281;
 val* var282 /* : String */;
 char* var283 /* : NativeString */;
-val* var284 /* : FlatString */;
+val* var284 /* : String */;
 val* var285 /* : MClass */;
 val* var287 /* : MClass */;
 val* var288 /* : String */;
@@ -300,11 +300,11 @@ static val* varonce324;
 static val* varonce326;
 val* var327 /* : String */;
 char* var328 /* : NativeString */;
-val* var329 /* : FlatString */;
+val* var329 /* : String */;
 static val* varonce330;
 val* var331 /* : String */;
 char* var332 /* : NativeString */;
-val* var333 /* : FlatString */;
+val* var333 /* : String */;
 val* var334 /* : String */;
 short int var335 /* : Bool */;
 int cltype336;
@@ -324,7 +324,7 @@ static val* varonce350;
 static val* varonce352;
 val* var353 /* : String */;
 char* var354 /* : NativeString */;
-val* var355 /* : FlatString */;
+val* var355 /* : String */;
 val* var356 /* : String */;
 val* var357 /* : String */;
 val* var_recv_ptr /* var recv_ptr: nullable Object */;
@@ -342,7 +342,7 @@ static val* varonce369;
 static val* varonce371;
 val* var372 /* : String */;
 char* var373 /* : NativeString */;
-val* var374 /* : FlatString */;
+val* var374 /* : String */;
 val* var375 /* : String */;
 val* var376 /* : String */;
 val* var378 /* : NativeArray[String] */;
@@ -350,17 +350,17 @@ static val* varonce377;
 static val* varonce379;
 val* var380 /* : String */;
 char* var381 /* : NativeString */;
-val* var382 /* : FlatString */;
+val* var382 /* : String */;
 static val* varonce383;
 val* var384 /* : String */;
 char* var385 /* : NativeString */;
-val* var386 /* : FlatString */;
+val* var386 /* : String */;
 val* var387 /* : String */;
 val* var388 /* : String */;
 static val* varonce389;
 val* var390 /* : String */;
 char* var391 /* : NativeString */;
-val* var392 /* : FlatString */;
+val* var392 /* : String */;
 val* var393 /* : String */;
 val* var_entry /* var entry: String */;
 val* var395 /* : NativeArray[String] */;
@@ -368,11 +368,11 @@ static val* varonce394;
 static val* varonce396;
 val* var397 /* : String */;
 char* var398 /* : NativeString */;
-val* var399 /* : FlatString */;
+val* var399 /* : String */;
 static val* varonce400;
 val* var401 /* : String */;
 char* var402 /* : NativeString */;
-val* var403 /* : FlatString */;
+val* var403 /* : String */;
 val* var404 /* : String */;
 val* var405 /* : MVirtualTypeProp */;
 val* var407 /* : MVirtualTypeProp */;
@@ -382,15 +382,15 @@ static val* varonce409;
 static val* varonce411;
 val* var412 /* : String */;
 char* var413 /* : NativeString */;
-val* var414 /* : FlatString */;
+val* var414 /* : String */;
 static val* varonce415;
 val* var416 /* : String */;
 char* var417 /* : NativeString */;
-val* var418 /* : FlatString */;
+val* var418 /* : String */;
 static val* varonce419;
 val* var420 /* : String */;
 char* var421 /* : NativeString */;
-val* var422 /* : FlatString */;
+val* var422 /* : String */;
 val* var423 /* : MVirtualTypeProp */;
 val* var425 /* : MVirtualTypeProp */;
 val* var426 /* : String */;
@@ -400,34 +400,34 @@ static val* varonce428;
 static val* varonce430;
 val* var431 /* : String */;
 char* var432 /* : NativeString */;
-val* var433 /* : FlatString */;
+val* var433 /* : String */;
 static val* varonce434;
 val* var435 /* : String */;
 char* var436 /* : NativeString */;
-val* var437 /* : FlatString */;
+val* var437 /* : String */;
 val* var438 /* : String */;
 val* var440 /* : NativeArray[String] */;
 static val* varonce439;
 static val* varonce441;
 val* var442 /* : String */;
 char* var443 /* : NativeString */;
-val* var444 /* : FlatString */;
+val* var444 /* : String */;
 static val* varonce445;
 val* var446 /* : String */;
 char* var447 /* : NativeString */;
-val* var448 /* : FlatString */;
+val* var448 /* : String */;
 val* var449 /* : String */;
 short int var450 /* : Bool */;
 short int var_451 /* var : Bool */;
 static val* varonce452;
 val* var453 /* : String */;
 char* var454 /* : NativeString */;
-val* var455 /* : FlatString */;
+val* var455 /* : String */;
 short int var456 /* : Bool */;
 static val* varonce457;
 val* var458 /* : String */;
 char* var459 /* : NativeString */;
-val* var460 /* : FlatString */;
+val* var460 /* : String */;
 val* var461 /* : String */;
 val* var_is_nullable /* var is_nullable: String */;
 val* var463 /* : NativeArray[String] */;
@@ -435,22 +435,22 @@ static val* varonce462;
 static val* varonce464;
 val* var465 /* : String */;
 char* var466 /* : NativeString */;
-val* var467 /* : FlatString */;
+val* var467 /* : String */;
 static val* varonce468;
 val* var469 /* : String */;
 char* var470 /* : NativeString */;
-val* var471 /* : FlatString */;
+val* var471 /* : String */;
 val* var472 /* : String */;
 val* var474 /* : NativeArray[String] */;
 static val* varonce473;
 static val* varonce475;
 val* var476 /* : String */;
 char* var477 /* : NativeString */;
-val* var478 /* : FlatString */;
+val* var478 /* : String */;
 static val* varonce479;
 val* var480 /* : String */;
 char* var481 /* : NativeString */;
-val* var482 /* : FlatString */;
+val* var482 /* : String */;
 val* var483 /* : String */;
 val* var484 /* : String */;
 val* var485 /* : AbstractCompiler */;
@@ -484,26 +484,26 @@ static val* varonce519;
 static val* varonce521;
 val* var522 /* : String */;
 char* var523 /* : NativeString */;
-val* var524 /* : FlatString */;
+val* var524 /* : String */;
 static val* varonce525;
 val* var526 /* : String */;
 char* var527 /* : NativeString */;
-val* var528 /* : FlatString */;
+val* var528 /* : String */;
 val* var529 /* : String */;
 val* var531 /* : NativeArray[String] */;
 static val* varonce530;
 static val* varonce532;
 val* var533 /* : String */;
 char* var534 /* : NativeString */;
-val* var535 /* : FlatString */;
+val* var535 /* : String */;
 static val* varonce536;
 val* var537 /* : String */;
 char* var538 /* : NativeString */;
-val* var539 /* : FlatString */;
+val* var539 /* : String */;
 static val* varonce540;
 val* var541 /* : String */;
 char* var542 /* : NativeString */;
-val* var543 /* : FlatString */;
+val* var543 /* : String */;
 val* var544 /* : String */;
 val* var545 /* : String */;
 val* var546 /* : String */;
@@ -512,11 +512,11 @@ static val* varonce547;
 static val* varonce549;
 val* var550 /* : String */;
 char* var551 /* : NativeString */;
-val* var552 /* : FlatString */;
+val* var552 /* : String */;
 static val* varonce553;
 val* var554 /* : String */;
 char* var555 /* : NativeString */;
-val* var556 /* : FlatString */;
+val* var556 /* : String */;
 val* var557 /* : String */;
 val* var558 /* : String */;
 val* var560 /* : NativeArray[String] */;
@@ -524,234 +524,234 @@ static val* varonce559;
 static val* varonce561;
 val* var562 /* : String */;
 char* var563 /* : NativeString */;
-val* var564 /* : FlatString */;
+val* var564 /* : String */;
 static val* varonce565;
 val* var566 /* : String */;
 char* var567 /* : NativeString */;
-val* var568 /* : FlatString */;
+val* var568 /* : String */;
 val* var569 /* : String */;
 val* var570 /* : String */;
 static val* varonce571;
 val* var572 /* : String */;
 char* var573 /* : NativeString */;
-val* var574 /* : FlatString */;
+val* var574 /* : String */;
 val* var576 /* : NativeArray[String] */;
 static val* varonce575;
 static val* varonce577;
 val* var578 /* : String */;
 char* var579 /* : NativeString */;
-val* var580 /* : FlatString */;
+val* var580 /* : String */;
 static val* varonce581;
 val* var582 /* : String */;
 char* var583 /* : NativeString */;
-val* var584 /* : FlatString */;
+val* var584 /* : String */;
 static val* varonce585;
 val* var586 /* : String */;
 char* var587 /* : NativeString */;
-val* var588 /* : FlatString */;
+val* var588 /* : String */;
 val* var589 /* : String */;
 val* var591 /* : NativeArray[String] */;
 static val* varonce590;
 static val* varonce592;
 val* var593 /* : String */;
 char* var594 /* : NativeString */;
-val* var595 /* : FlatString */;
+val* var595 /* : String */;
 val* var596 /* : String */;
 val* var597 /* : String */;
 static val* varonce598;
 val* var599 /* : String */;
 char* var600 /* : NativeString */;
-val* var601 /* : FlatString */;
+val* var601 /* : String */;
 val* var603 /* : NativeArray[String] */;
 static val* varonce602;
 static val* varonce604;
 val* var605 /* : String */;
 char* var606 /* : NativeString */;
-val* var607 /* : FlatString */;
+val* var607 /* : String */;
 static val* varonce608;
 val* var609 /* : String */;
 char* var610 /* : NativeString */;
-val* var611 /* : FlatString */;
+val* var611 /* : String */;
 static val* varonce612;
 val* var613 /* : String */;
 char* var614 /* : NativeString */;
-val* var615 /* : FlatString */;
+val* var615 /* : String */;
 static val* varonce616;
 val* var617 /* : String */;
 char* var618 /* : NativeString */;
-val* var619 /* : FlatString */;
+val* var619 /* : String */;
 val* var620 /* : String */;
 val* var621 /* : String */;
 static val* varonce622;
 val* var623 /* : String */;
 char* var624 /* : NativeString */;
-val* var625 /* : FlatString */;
+val* var625 /* : String */;
 static val* varonce626;
 val* var627 /* : String */;
 char* var628 /* : NativeString */;
-val* var629 /* : FlatString */;
+val* var629 /* : String */;
 var_value = p0;
 var_mtype = p1;
 var_tag = p2;
 if (unlikely(varonce==NULL)) {
-var1 = NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String);
+var1 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String);
 if (likely(varonce2!=NULL)) {
 var3 = varonce2;
 } else {
 var4 = "/* type test for ";
-var5 = standard___standard__NativeString___to_s_with_length(var4, 17l);
+var5 = core__flat___NativeString___to_s_full(var4, 17l, 17l);
 var3 = var5;
 varonce2 = var3;
 }
-((struct instance_standard__NativeArray*)var1)->values[0]=var3;
+((struct instance_core__NativeArray*)var1)->values[0]=var3;
 if (likely(varonce6!=NULL)) {
 var7 = varonce6;
 } else {
 var8 = " isa ";
-var9 = standard___standard__NativeString___to_s_with_length(var8, 5l);
+var9 = core__flat___NativeString___to_s_full(var8, 5l, 5l);
 var7 = var9;
 varonce6 = var7;
 }
-((struct instance_standard__NativeArray*)var1)->values[2]=var7;
+((struct instance_core__NativeArray*)var1)->values[2]=var7;
 if (likely(varonce10!=NULL)) {
 var11 = varonce10;
 } else {
 var12 = " */";
-var13 = standard___standard__NativeString___to_s_with_length(var12, 3l);
+var13 = core__flat___NativeString___to_s_full(var12, 3l, 3l);
 var11 = var13;
 varonce10 = var11;
 }
-((struct instance_standard__NativeArray*)var1)->values[4]=var11;
+((struct instance_core__NativeArray*)var1)->values[4]=var11;
 } else {
 var1 = varonce;
 varonce = NULL;
 }
 {
-var14 = nit___nit__RuntimeVariable___standard__string__Object__inspect(var_value);
+var14 = nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_value);
 }
-((struct instance_standard__NativeArray*)var1)->values[1]=var14;
+((struct instance_core__NativeArray*)var1)->values[1]=var14;
 {
-var15 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_standard__string__Object__to_s]))(var_mtype); /* to_s on <var_mtype:MType>*/
+var15 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on <var_mtype:MType>*/
 }
-((struct instance_standard__NativeArray*)var1)->values[3]=var15;
+((struct instance_core__NativeArray*)var1)->values[3]=var15;
 {
-var16 = ((val*(*)(val* self))(var1->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1); /* native_to_s on <var1:NativeArray[String]>*/
+var16 = ((val*(*)(val* self))(var1->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1); /* native_to_s on <var1:NativeArray[String]>*/
 }
 varonce = var1;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var16); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var16); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 {
-var17 = nit___nit__AbstractCompilerVisitor___bool_type(self);
+var17 = nitc___nitc__AbstractCompilerVisitor___bool_type(self);
 }
 {
-var18 = nit___nit__AbstractCompilerVisitor___new_var(self, var17);
+var18 = nitc___nitc__AbstractCompilerVisitor___new_var(self, var17);
 }
 var_res = var18;
 if (likely(varonce19!=NULL)) {
 var20 = varonce19;
 } else {
 var21 = "cltype";
-var22 = standard___standard__NativeString___to_s_with_length(var21, 6l);
+var22 = core__flat___NativeString___to_s_full(var21, 6l, 6l);
 var20 = var22;
 varonce19 = var20;
 }
 {
-var23 = nit___nit__AbstractCompilerVisitor___get_name(self, var20);
+var23 = nitc___nitc__AbstractCompilerVisitor___get_name(self, var20);
 }
 var_cltype = var23;
 if (unlikely(varonce24==NULL)) {
-var25 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var25 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce26!=NULL)) {
 var27 = varonce26;
 } else {
 var28 = "int ";
-var29 = standard___standard__NativeString___to_s_with_length(var28, 4l);
+var29 = core__flat___NativeString___to_s_full(var28, 4l, 4l);
 var27 = var29;
 varonce26 = var27;
 }
-((struct instance_standard__NativeArray*)var25)->values[0]=var27;
+((struct instance_core__NativeArray*)var25)->values[0]=var27;
 if (likely(varonce30!=NULL)) {
 var31 = varonce30;
 } else {
 var32 = ";";
-var33 = standard___standard__NativeString___to_s_with_length(var32, 1l);
+var33 = core__flat___NativeString___to_s_full(var32, 1l, 1l);
 var31 = var33;
 varonce30 = var31;
 }
-((struct instance_standard__NativeArray*)var25)->values[2]=var31;
+((struct instance_core__NativeArray*)var25)->values[2]=var31;
 } else {
 var25 = varonce24;
 varonce24 = NULL;
 }
-((struct instance_standard__NativeArray*)var25)->values[1]=var_cltype;
+((struct instance_core__NativeArray*)var25)->values[1]=var_cltype;
 {
-var34 = ((val*(*)(val* self))(var25->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var25); /* native_to_s on <var25:NativeArray[String]>*/
+var34 = ((val*(*)(val* self))(var25->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var25); /* native_to_s on <var25:NativeArray[String]>*/
 }
 varonce24 = var25;
 {
-nit___nit__AbstractCompilerVisitor___add_decl(self, var34); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add_decl(self, var34); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateErasureCompilerVisitor>*/
 }
 if (likely(varonce35!=NULL)) {
 var36 = varonce35;
 } else {
 var37 = "idtype";
-var38 = standard___standard__NativeString___to_s_with_length(var37, 6l);
+var38 = core__flat___NativeString___to_s_full(var37, 6l, 6l);
 var36 = var38;
 varonce35 = var36;
 }
 {
-var39 = nit___nit__AbstractCompilerVisitor___get_name(self, var36);
+var39 = nitc___nitc__AbstractCompilerVisitor___get_name(self, var36);
 }
 var_idtype = var39;
 if (unlikely(varonce40==NULL)) {
-var41 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var41 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce42!=NULL)) {
 var43 = varonce42;
 } else {
 var44 = "int ";
-var45 = standard___standard__NativeString___to_s_with_length(var44, 4l);
+var45 = core__flat___NativeString___to_s_full(var44, 4l, 4l);
 var43 = var45;
 varonce42 = var43;
 }
-((struct instance_standard__NativeArray*)var41)->values[0]=var43;
+((struct instance_core__NativeArray*)var41)->values[0]=var43;
 if (likely(varonce46!=NULL)) {
 var47 = varonce46;
 } else {
 var48 = ";";
-var49 = standard___standard__NativeString___to_s_with_length(var48, 1l);
+var49 = core__flat___NativeString___to_s_full(var48, 1l, 1l);
 var47 = var49;
 varonce46 = var47;
 }
-((struct instance_standard__NativeArray*)var41)->values[2]=var47;
+((struct instance_core__NativeArray*)var41)->values[2]=var47;
 } else {
 var41 = varonce40;
 varonce40 = NULL;
 }
-((struct instance_standard__NativeArray*)var41)->values[1]=var_idtype;
+((struct instance_core__NativeArray*)var41)->values[1]=var_idtype;
 {
-var50 = ((val*(*)(val* self))(var41->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var41); /* native_to_s on <var41:NativeArray[String]>*/
+var50 = ((val*(*)(val* self))(var41->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var41); /* native_to_s on <var41:NativeArray[String]>*/
 }
 varonce40 = var41;
 {
-nit___nit__AbstractCompilerVisitor___add_decl(self, var50); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add_decl(self, var50); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateErasureCompilerVisitor>*/
 }
 {
-var51 = nit___nit__SeparateCompilerVisitor___maybe_null(self, var_value);
+var51 = nitc___nitc__SeparateCompilerVisitor___maybe_null(self, var_value);
 }
 var_maybe_null = var51;
 if (likely(varonce52!=NULL)) {
 var53 = varonce52;
 } else {
 var54 = "0";
-var55 = standard___standard__NativeString___to_s_with_length(var54, 1l);
+var55 = core__flat___NativeString___to_s_full(var54, 1l, 1l);
 var53 = var55;
 varonce52 = var53;
 }
 var_accept_null = var53;
 /* <var_mtype:MType> isa MNullableType */
-cltype = type_nit__MNullableType.color;
-idtype = type_nit__MNullableType.id;
+cltype = type_nitc__MNullableType.color;
+idtype = type_nitc__MNullableType.id;
 if(cltype >= var_mtype->type->table_size) {
 var56 = 0;
 } else {
@@ -760,10 +760,10 @@ var56 = var_mtype->type->type_table[cltype] == idtype;
 if (var56){
 {
 { /* Inline model#MProxyType#mtype (var_mtype) on <var_mtype:MType(MNullableType)> */
-var59 = var_mtype->attrs[COLOR_nit__model__MProxyType___mtype].val; /* _mtype on <var_mtype:MType(MNullableType)> */
+var59 = var_mtype->attrs[COLOR_nitc__model__MProxyType___mtype].val; /* _mtype on <var_mtype:MType(MNullableType)> */
 if (unlikely(var59 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1598);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1625);
 fatal_exit(1);
 }
 var57 = var59;
@@ -775,7 +775,7 @@ if (likely(varonce60!=NULL)) {
 var61 = varonce60;
 } else {
 var62 = "1";
-var63 = standard___standard__NativeString___to_s_with_length(var62, 1l);
+var63 = core__flat___NativeString___to_s_full(var62, 1l, 1l);
 var61 = var63;
 varonce60 = var61;
 }
@@ -783,8 +783,8 @@ var_accept_null = var61;
 } else {
 }
 /* <var_mtype:MType> isa MParameterType */
-cltype65 = type_nit__MParameterType.color;
-idtype66 = type_nit__MParameterType.id;
+cltype65 = type_nitc__MParameterType.color;
+idtype66 = type_nitc__MParameterType.id;
 if(cltype65 >= var_mtype->type->table_size) {
 var64 = 0;
 } else {
@@ -793,26 +793,26 @@ var64 = var_mtype->type->type_table[cltype65] == idtype66;
 if (var64){
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateErasureCompilerVisitor> */
-var69 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
+var69 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
 var67 = var69;
 RET_LABEL68:(void)0;
 }
 }
 if (var67 == NULL) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 521);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 521);
 fatal_exit(1);
 } else {
 { /* Inline abstract_compiler#StaticFrame#mpropdef (var67) on <var67:nullable StaticFrame> */
 if (unlikely(var67 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1828);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1914);
 fatal_exit(1);
 }
-var72 = var67->attrs[COLOR_nit__abstract_compiler__StaticFrame___mpropdef].val; /* _mpropdef on <var67:nullable StaticFrame> */
+var72 = var67->attrs[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef].val; /* _mpropdef on <var67:nullable StaticFrame> */
 if (unlikely(var72 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1828);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1914);
 fatal_exit(1);
 }
 var70 = var72;
@@ -821,10 +821,10 @@ RET_LABEL71:(void)0;
 }
 {
 { /* Inline model#MPropDef#mclassdef (var70) on <var70:MPropDef> */
-var75 = var70->attrs[COLOR_nit__model__MPropDef___mclassdef].val; /* _mclassdef on <var70:MPropDef> */
+var75 = var70->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <var70:MPropDef> */
 if (unlikely(var75 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2209);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2227);
 fatal_exit(1);
 }
 var73 = var75;
@@ -833,10 +833,10 @@ RET_LABEL74:(void)0;
 }
 {
 { /* Inline model#MClassDef#bound_mtype (var73) on <var73:MClassDef> */
-var78 = var73->attrs[COLOR_nit__model__MClassDef___bound_mtype].val; /* _bound_mtype on <var73:MClassDef> */
+var78 = var73->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on <var73:MClassDef> */
 if (unlikely(var78 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 556);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 579);
 fatal_exit(1);
 }
 var76 = var78;
@@ -845,26 +845,26 @@ RET_LABEL77:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateErasureCompilerVisitor> */
-var81 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
+var81 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
 var79 = var81;
 RET_LABEL80:(void)0;
 }
 }
 if (var79 == NULL) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 521);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 521);
 fatal_exit(1);
 } else {
 { /* Inline abstract_compiler#StaticFrame#mpropdef (var79) on <var79:nullable StaticFrame> */
 if (unlikely(var79 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1828);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1914);
 fatal_exit(1);
 }
-var84 = var79->attrs[COLOR_nit__abstract_compiler__StaticFrame___mpropdef].val; /* _mpropdef on <var79:nullable StaticFrame> */
+var84 = var79->attrs[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef].val; /* _mpropdef on <var79:nullable StaticFrame> */
 if (unlikely(var84 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1828);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1914);
 fatal_exit(1);
 }
 var82 = var84;
@@ -873,10 +873,10 @@ RET_LABEL83:(void)0;
 }
 {
 { /* Inline model#MPropDef#mclassdef (var82) on <var82:MPropDef> */
-var87 = var82->attrs[COLOR_nit__model__MPropDef___mclassdef].val; /* _mclassdef on <var82:MPropDef> */
+var87 = var82->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <var82:MPropDef> */
 if (unlikely(var87 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2209);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2227);
 fatal_exit(1);
 }
 var85 = var87;
@@ -885,10 +885,10 @@ RET_LABEL86:(void)0;
 }
 {
 { /* Inline model#MClassDef#bound_mtype (var85) on <var85:MClassDef> */
-var90 = var85->attrs[COLOR_nit__model__MClassDef___bound_mtype].val; /* _bound_mtype on <var85:MClassDef> */
+var90 = var85->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on <var85:MClassDef> */
 if (unlikely(var90 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 556);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 579);
 fatal_exit(1);
 }
 var88 = var90;
@@ -897,26 +897,26 @@ RET_LABEL89:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateErasureCompilerVisitor> */
-var93 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
+var93 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
 var91 = var93;
 RET_LABEL92:(void)0;
 }
 }
 if (var91 == NULL) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 521);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 521);
 fatal_exit(1);
 } else {
 { /* Inline abstract_compiler#StaticFrame#mpropdef (var91) on <var91:nullable StaticFrame> */
 if (unlikely(var91 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1828);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1914);
 fatal_exit(1);
 }
-var96 = var91->attrs[COLOR_nit__abstract_compiler__StaticFrame___mpropdef].val; /* _mpropdef on <var91:nullable StaticFrame> */
+var96 = var91->attrs[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef].val; /* _mpropdef on <var91:nullable StaticFrame> */
 if (unlikely(var96 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1828);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1914);
 fatal_exit(1);
 }
 var94 = var96;
@@ -925,10 +925,10 @@ RET_LABEL95:(void)0;
 }
 {
 { /* Inline model#MPropDef#mclassdef (var94) on <var94:MPropDef> */
-var99 = var94->attrs[COLOR_nit__model__MPropDef___mclassdef].val; /* _mclassdef on <var94:MPropDef> */
+var99 = var94->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <var94:MPropDef> */
 if (unlikely(var99 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2209);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2227);
 fatal_exit(1);
 }
 var97 = var99;
@@ -937,10 +937,10 @@ RET_LABEL98:(void)0;
 }
 {
 { /* Inline model#MClassDef#mmodule (var97) on <var97:MClassDef> */
-var102 = var97->attrs[COLOR_nit__model__MClassDef___mmodule].val; /* _mmodule on <var97:MClassDef> */
+var102 = var97->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var97:MClassDef> */
 if (unlikely(var102 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 550);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 573);
 fatal_exit(1);
 }
 var100 = var102;
@@ -948,12 +948,12 @@ RET_LABEL101:(void)0;
 }
 }
 {
-var103 = nit___nit__MParameterType___MType__resolve_for(var_mtype, var76, var88, var100, 0);
+var103 = nitc___nitc__MParameterType___MType__resolve_for(var_mtype, var76, var88, var100, 0);
 }
 var_mtype = var103;
 /* <var_mtype:MType> isa MNullableType */
-cltype105 = type_nit__MNullableType.color;
-idtype106 = type_nit__MNullableType.id;
+cltype105 = type_nitc__MNullableType.color;
+idtype106 = type_nitc__MNullableType.id;
 if(cltype105 >= var_mtype->type->table_size) {
 var104 = 0;
 } else {
@@ -962,10 +962,10 @@ var104 = var_mtype->type->type_table[cltype105] == idtype106;
 if (var104){
 {
 { /* Inline model#MProxyType#mtype (var_mtype) on <var_mtype:MType(MNullableType)> */
-var109 = var_mtype->attrs[COLOR_nit__model__MProxyType___mtype].val; /* _mtype on <var_mtype:MType(MNullableType)> */
+var109 = var_mtype->attrs[COLOR_nitc__model__MProxyType___mtype].val; /* _mtype on <var_mtype:MType(MNullableType)> */
 if (unlikely(var109 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1598);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1625);
 fatal_exit(1);
 }
 var107 = var109;
@@ -977,7 +977,7 @@ if (likely(varonce110!=NULL)) {
 var111 = varonce110;
 } else {
 var112 = "1";
-var113 = standard___standard__NativeString___to_s_with_length(var112, 1l);
+var113 = core__flat___NativeString___to_s_full(var112, 1l, 1l);
 var111 = var113;
 varonce110 = var111;
 }
@@ -988,10 +988,10 @@ var_accept_null = var111;
 }
 {
 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_value) on <var_value:RuntimeVariable> */
-var116 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype].val; /* _mcasttype on <var_value:RuntimeVariable> */
+var116 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype].val; /* _mcasttype on <var_value:RuntimeVariable> */
 if (unlikely(var116 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1787);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1873);
 fatal_exit(1);
 }
 var114 = var116;
@@ -1000,26 +1000,26 @@ RET_LABEL115:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateErasureCompilerVisitor> */
-var119 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
+var119 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
 var117 = var119;
 RET_LABEL118:(void)0;
 }
 }
 if (var117 == NULL) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 528);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 528);
 fatal_exit(1);
 } else {
 { /* Inline abstract_compiler#StaticFrame#mpropdef (var117) on <var117:nullable StaticFrame> */
 if (unlikely(var117 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1828);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1914);
 fatal_exit(1);
 }
-var122 = var117->attrs[COLOR_nit__abstract_compiler__StaticFrame___mpropdef].val; /* _mpropdef on <var117:nullable StaticFrame> */
+var122 = var117->attrs[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef].val; /* _mpropdef on <var117:nullable StaticFrame> */
 if (unlikely(var122 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1828);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1914);
 fatal_exit(1);
 }
 var120 = var122;
@@ -1028,10 +1028,10 @@ RET_LABEL121:(void)0;
 }
 {
 { /* Inline model#MPropDef#mclassdef (var120) on <var120:MPropDef> */
-var125 = var120->attrs[COLOR_nit__model__MPropDef___mclassdef].val; /* _mclassdef on <var120:MPropDef> */
+var125 = var120->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <var120:MPropDef> */
 if (unlikely(var125 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2209);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2227);
 fatal_exit(1);
 }
 var123 = var125;
@@ -1040,10 +1040,10 @@ RET_LABEL124:(void)0;
 }
 {
 { /* Inline model#MClassDef#mmodule (var123) on <var123:MClassDef> */
-var128 = var123->attrs[COLOR_nit__model__MClassDef___mmodule].val; /* _mmodule on <var123:MClassDef> */
+var128 = var123->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var123:MClassDef> */
 if (unlikely(var128 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 550);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 573);
 fatal_exit(1);
 }
 var126 = var128;
@@ -1052,26 +1052,26 @@ RET_LABEL127:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateErasureCompilerVisitor> */
-var131 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
+var131 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
 var129 = var131;
 RET_LABEL130:(void)0;
 }
 }
 if (var129 == NULL) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 528);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 528);
 fatal_exit(1);
 } else {
 { /* Inline abstract_compiler#StaticFrame#mpropdef (var129) on <var129:nullable StaticFrame> */
 if (unlikely(var129 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1828);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1914);
 fatal_exit(1);
 }
-var134 = var129->attrs[COLOR_nit__abstract_compiler__StaticFrame___mpropdef].val; /* _mpropdef on <var129:nullable StaticFrame> */
+var134 = var129->attrs[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef].val; /* _mpropdef on <var129:nullable StaticFrame> */
 if (unlikely(var134 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1828);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1914);
 fatal_exit(1);
 }
 var132 = var134;
@@ -1080,10 +1080,10 @@ RET_LABEL133:(void)0;
 }
 {
 { /* Inline model#MPropDef#mclassdef (var132) on <var132:MPropDef> */
-var137 = var132->attrs[COLOR_nit__model__MPropDef___mclassdef].val; /* _mclassdef on <var132:MPropDef> */
+var137 = var132->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <var132:MPropDef> */
 if (unlikely(var137 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2209);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2227);
 fatal_exit(1);
 }
 var135 = var137;
@@ -1092,10 +1092,10 @@ RET_LABEL136:(void)0;
 }
 {
 { /* Inline model#MClassDef#bound_mtype (var135) on <var135:MClassDef> */
-var140 = var135->attrs[COLOR_nit__model__MClassDef___bound_mtype].val; /* _bound_mtype on <var135:MClassDef> */
+var140 = var135->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on <var135:MClassDef> */
 if (unlikely(var140 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 556);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 579);
 fatal_exit(1);
 }
 var138 = var140;
@@ -1103,67 +1103,67 @@ RET_LABEL139:(void)0;
 }
 }
 {
-var141 = nit___nit__MType___is_subtype(var114, var126, var138, var_mtype);
+var141 = nitc___nitc__MType___is_subtype(var114, var126, var138, var_mtype);
 }
 if (var141){
 if (unlikely(varonce142==NULL)) {
-var143 = NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String);
+var143 = NEW_core__NativeArray(6l, &type_core__NativeArray__core__String);
 if (likely(varonce144!=NULL)) {
 var145 = varonce144;
 } else {
 var146 = " = 1; /* easy ";
-var147 = standard___standard__NativeString___to_s_with_length(var146, 14l);
+var147 = core__flat___NativeString___to_s_full(var146, 14l, 14l);
 var145 = var147;
 varonce144 = var145;
 }
-((struct instance_standard__NativeArray*)var143)->values[1]=var145;
+((struct instance_core__NativeArray*)var143)->values[1]=var145;
 if (likely(varonce148!=NULL)) {
 var149 = varonce148;
 } else {
 var150 = " isa ";
-var151 = standard___standard__NativeString___to_s_with_length(var150, 5l);
+var151 = core__flat___NativeString___to_s_full(var150, 5l, 5l);
 var149 = var151;
 varonce148 = var149;
 }
-((struct instance_standard__NativeArray*)var143)->values[3]=var149;
+((struct instance_core__NativeArray*)var143)->values[3]=var149;
 if (likely(varonce152!=NULL)) {
 var153 = varonce152;
 } else {
 var154 = "*/";
-var155 = standard___standard__NativeString___to_s_with_length(var154, 2l);
+var155 = core__flat___NativeString___to_s_full(var154, 2l, 2l);
 var153 = var155;
 varonce152 = var153;
 }
-((struct instance_standard__NativeArray*)var143)->values[5]=var153;
+((struct instance_core__NativeArray*)var143)->values[5]=var153;
 } else {
 var143 = varonce142;
 varonce142 = NULL;
 }
 {
-var156 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
+var156 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var143)->values[0]=var156;
+((struct instance_core__NativeArray*)var143)->values[0]=var156;
 {
-var157 = nit___nit__RuntimeVariable___standard__string__Object__inspect(var_value);
+var157 = nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_value);
 }
-((struct instance_standard__NativeArray*)var143)->values[2]=var157;
+((struct instance_core__NativeArray*)var143)->values[2]=var157;
 {
-var158 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_standard__string__Object__to_s]))(var_mtype); /* to_s on <var_mtype:MType>*/
+var158 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on <var_mtype:MType>*/
 }
-((struct instance_standard__NativeArray*)var143)->values[4]=var158;
+((struct instance_core__NativeArray*)var143)->values[4]=var158;
 {
-var159 = ((val*(*)(val* self))(var143->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var143); /* native_to_s on <var143:NativeArray[String]>*/
+var159 = ((val*(*)(val* self))(var143->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var143); /* native_to_s on <var143:NativeArray[String]>*/
 }
 varonce142 = var143;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var159); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var159); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateErasureCompilerVisitor> */
-var162 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
+var162 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
 if (unlikely(var162 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
 fatal_exit(1);
 }
 var160 = var162;
@@ -1172,10 +1172,10 @@ RET_LABEL161:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var160) on <var160:AbstractCompiler(SeparateCompiler)> */
-var165 = var160->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var160:AbstractCompiler(SeparateCompiler)> */
+var165 = var160->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var160:AbstractCompiler(SeparateCompiler)> */
 if (unlikely(var165 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 522);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538);
 fatal_exit(1);
 }
 var163 = var165;
@@ -1184,10 +1184,10 @@ RET_LABEL164:(void)0;
 }
 {
 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var163) on <var163:ModelBuilder> */
-var168 = var163->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on <var163:ModelBuilder> */
+var168 = var163->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on <var163:ModelBuilder> */
 if (unlikely(var168 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base, 47);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base, 47);
 fatal_exit(1);
 }
 var166 = var168;
@@ -1196,10 +1196,10 @@ RET_LABEL167:(void)0;
 }
 {
 { /* Inline abstract_compiler#ToolContext#opt_typing_test_metrics (var166) on <var166:ToolContext> */
-var171 = var166->attrs[COLOR_nit__abstract_compiler__ToolContext___opt_typing_test_metrics].val; /* _opt_typing_test_metrics on <var166:ToolContext> */
+var171 = var166->attrs[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics].val; /* _opt_typing_test_metrics on <var166:ToolContext> */
 if (unlikely(var171 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 60);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 60);
 fatal_exit(1);
 }
 var169 = var171;
@@ -1217,10 +1217,10 @@ var175 = (short int)((long)(var172)>>2);
 if (var175){
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateErasureCompilerVisitor> */
-var178 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
+var178 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
 if (unlikely(var178 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
 fatal_exit(1);
 }
 var176 = var178;
@@ -1229,10 +1229,10 @@ RET_LABEL177:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_skipped (var176) on <var176:AbstractCompiler(SeparateCompiler)> */
-var181 = var176->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___count_type_test_skipped].val; /* _count_type_test_skipped on <var176:AbstractCompiler(SeparateCompiler)> */
+var181 = var176->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_skipped].val; /* _count_type_test_skipped on <var176:AbstractCompiler(SeparateCompiler)> */
 if (unlikely(var181 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_skipped");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1017);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1048);
 fatal_exit(1);
 }
 var179 = var181;
@@ -1242,7 +1242,7 @@ RET_LABEL180:(void)0;
 var_ = var179;
 var_182 = var_tag;
 {
-var183 = standard___standard__HashMap___standard__abstract_collection__MapRead___91d_93d(var_, var_182);
+var183 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_, var_182);
 }
 {
 { /* Inline kernel#Int#+ (var183,1l) on <var183:nullable Object(Int)> */
@@ -1250,9 +1250,9 @@ var183 = standard___standard__HashMap___standard__abstract_collection__MapRead__
 /* <1l:Int> isa OTHER */
 var186 = 1; /* easy <1l:Int> isa OTHER*/
 if (unlikely(!var186)) {
-var_class_name = type_standard__Int.name;
+var_class_name = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 537);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
 fatal_exit(1);
 }
 var189 = (long)(var183)>>2;
@@ -1264,39 +1264,39 @@ RET_LABEL185:(void)0;
 }
 {
 var191 = (val*)(var184<<2|1);
-standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var_, var_182, var191); /* Direct call hash_collection#HashMap#[]= on <var_:HashMap[String, Int]>*/
+core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_, var_182, var191); /* Direct call hash_collection#HashMap#[]= on <var_:HashMap[String, Int]>*/
 }
 if (unlikely(varonce192==NULL)) {
-var193 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var193 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce194!=NULL)) {
 var195 = varonce194;
 } else {
 var196 = "count_type_test_skipped_";
-var197 = standard___standard__NativeString___to_s_with_length(var196, 24l);
+var197 = core__flat___NativeString___to_s_full(var196, 24l, 24l);
 var195 = var197;
 varonce194 = var195;
 }
-((struct instance_standard__NativeArray*)var193)->values[0]=var195;
+((struct instance_core__NativeArray*)var193)->values[0]=var195;
 if (likely(varonce198!=NULL)) {
 var199 = varonce198;
 } else {
 var200 = "++;";
-var201 = standard___standard__NativeString___to_s_with_length(var200, 3l);
+var201 = core__flat___NativeString___to_s_full(var200, 3l, 3l);
 var199 = var201;
 varonce198 = var199;
 }
-((struct instance_standard__NativeArray*)var193)->values[2]=var199;
+((struct instance_core__NativeArray*)var193)->values[2]=var199;
 } else {
 var193 = varonce192;
 varonce192 = NULL;
 }
-((struct instance_standard__NativeArray*)var193)->values[1]=var_tag;
+((struct instance_core__NativeArray*)var193)->values[1]=var_tag;
 {
-var202 = ((val*(*)(val* self))(var193->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var193); /* native_to_s on <var193:NativeArray[String]>*/
+var202 = ((val*(*)(val* self))(var193->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var193); /* native_to_s on <var193:NativeArray[String]>*/
 }
 varonce192 = var193;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var202); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var202); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 } else {
 }
@@ -1306,10 +1306,10 @@ goto RET_LABEL;
 }
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
-var205 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
+var205 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
 if (unlikely(var205 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var203 = var205;
@@ -1317,41 +1317,41 @@ RET_LABEL204:(void)0;
 }
 }
 {
-var206 = ((short int(*)(val* self))(var203->class->vft[COLOR_nit__abstract_compiler__MType__is_c_primitive]))(var203); /* is_c_primitive on <var203:MType>*/
+var206 = ((short int(*)(val* self))(var203->class->vft[COLOR_nitc__abstract_compiler__MType__is_c_primitive]))(var203); /* is_c_primitive on <var203:MType>*/
 }
 var207 = !var206;
 if (var207){
 if (unlikely(varonce208==NULL)) {
-var209 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var209 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce210!=NULL)) {
 var211 = varonce210;
 } else {
 var212 = "->class->";
-var213 = standard___standard__NativeString___to_s_with_length(var212, 9l);
+var213 = core__flat___NativeString___to_s_full(var212, 9l, 9l);
 var211 = var213;
 varonce210 = var211;
 }
-((struct instance_standard__NativeArray*)var209)->values[1]=var211;
+((struct instance_core__NativeArray*)var209)->values[1]=var211;
 } else {
 var209 = varonce208;
 varonce208 = NULL;
 }
 {
-var214 = ((val*(*)(val* self))(var_value->class->vft[COLOR_standard__string__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
+var214 = ((val*(*)(val* self))(var_value->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var209)->values[0]=var214;
+((struct instance_core__NativeArray*)var209)->values[0]=var214;
 {
-var215 = ((val*(*)(val* self))(var209->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var209); /* native_to_s on <var209:NativeArray[String]>*/
+var215 = ((val*(*)(val* self))(var209->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var209); /* native_to_s on <var209:NativeArray[String]>*/
 }
 varonce208 = var209;
 var_class_ptr = var215;
 } else {
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
-var218 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
+var218 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
 if (unlikely(var218 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var216 = var218;
@@ -1359,8 +1359,8 @@ RET_LABEL217:(void)0;
 }
 }
 /* <var216:MType> isa MClassType */
-cltype220 = type_nit__MClassType.color;
-idtype221 = type_nit__MClassType.id;
+cltype220 = type_nitc__MClassType.color;
+idtype221 = type_nitc__MClassType.id;
 if(cltype220 >= var216->type->table_size) {
 var219 = 0;
 } else {
@@ -1369,15 +1369,15 @@ var219 = var216->type->type_table[cltype220] == idtype221;
 if (unlikely(!var219)) {
 var_class_name222 = var216 == NULL ? "null" : var216->type->name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name222);
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 541);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 541);
 fatal_exit(1);
 }
 {
 { /* Inline model#MClassType#mclass (var216) on <var216:MType(MClassType)> */
-var225 = var216->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var216:MType(MClassType)> */
+var225 = var216->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var216:MType(MClassType)> */
 if (unlikely(var225 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var223 = var225;
@@ -1386,68 +1386,68 @@ RET_LABEL224:(void)0;
 }
 var_mclass = var223;
 if (unlikely(varonce226==NULL)) {
-var227 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var227 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce228!=NULL)) {
 var229 = varonce228;
 } else {
 var230 = "class_";
-var231 = standard___standard__NativeString___to_s_with_length(var230, 6l);
+var231 = core__flat___NativeString___to_s_full(var230, 6l, 6l);
 var229 = var231;
 varonce228 = var229;
 }
-((struct instance_standard__NativeArray*)var227)->values[0]=var229;
+((struct instance_core__NativeArray*)var227)->values[0]=var229;
 } else {
 var227 = varonce226;
 varonce226 = NULL;
 }
 {
-var232 = nit___nit__MClass___nit__model_base__MEntity__c_name(var_mclass);
+var232 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass);
 }
-((struct instance_standard__NativeArray*)var227)->values[1]=var232;
+((struct instance_core__NativeArray*)var227)->values[1]=var232;
 {
-var233 = ((val*(*)(val* self))(var227->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var227); /* native_to_s on <var227:NativeArray[String]>*/
+var233 = ((val*(*)(val* self))(var227->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var227); /* native_to_s on <var227:NativeArray[String]>*/
 }
 varonce226 = var227;
 {
-nit___nit__AbstractCompilerVisitor___require_declaration(self, var233); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___require_declaration(self, var233); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce234==NULL)) {
-var235 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var235 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce236!=NULL)) {
 var237 = varonce236;
 } else {
 var238 = "class_";
-var239 = standard___standard__NativeString___to_s_with_length(var238, 6l);
+var239 = core__flat___NativeString___to_s_full(var238, 6l, 6l);
 var237 = var239;
 varonce236 = var237;
 }
-((struct instance_standard__NativeArray*)var235)->values[0]=var237;
+((struct instance_core__NativeArray*)var235)->values[0]=var237;
 if (likely(varonce240!=NULL)) {
 var241 = varonce240;
 } else {
 var242 = ".";
-var243 = standard___standard__NativeString___to_s_with_length(var242, 1l);
+var243 = core__flat___NativeString___to_s_full(var242, 1l, 1l);
 var241 = var243;
 varonce240 = var241;
 }
-((struct instance_standard__NativeArray*)var235)->values[2]=var241;
+((struct instance_core__NativeArray*)var235)->values[2]=var241;
 } else {
 var235 = varonce234;
 varonce234 = NULL;
 }
 {
-var244 = nit___nit__MClass___nit__model_base__MEntity__c_name(var_mclass);
+var244 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass);
 }
-((struct instance_standard__NativeArray*)var235)->values[1]=var244;
+((struct instance_core__NativeArray*)var235)->values[1]=var244;
 {
-var245 = ((val*(*)(val* self))(var235->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var235); /* native_to_s on <var235:NativeArray[String]>*/
+var245 = ((val*(*)(val* self))(var235->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var235); /* native_to_s on <var235:NativeArray[String]>*/
 }
 varonce234 = var235;
 var_class_ptr = var245;
 }
 /* <var_mtype:MType> isa MClassType */
-cltype247 = type_nit__MClassType.color;
-idtype248 = type_nit__MClassType.id;
+cltype247 = type_nitc__MClassType.color;
+idtype248 = type_nitc__MClassType.id;
 if(cltype247 >= var_mtype->type->table_size) {
 var246 = 0;
 } else {
@@ -1455,26 +1455,26 @@ var246 = var_mtype->type->type_table[cltype247] == idtype248;
 }
 if (var246){
 if (unlikely(varonce249==NULL)) {
-var250 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var250 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce251!=NULL)) {
 var252 = varonce251;
 } else {
 var253 = "class_";
-var254 = standard___standard__NativeString___to_s_with_length(var253, 6l);
+var254 = core__flat___NativeString___to_s_full(var253, 6l, 6l);
 var252 = var254;
 varonce251 = var252;
 }
-((struct instance_standard__NativeArray*)var250)->values[0]=var252;
+((struct instance_core__NativeArray*)var250)->values[0]=var252;
 } else {
 var250 = varonce249;
 varonce249 = NULL;
 }
 {
 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
-var257 = var_mtype->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
+var257 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
 if (unlikely(var257 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var255 = var257;
@@ -1482,47 +1482,47 @@ RET_LABEL256:(void)0;
 }
 }
 {
-var258 = nit___nit__MClass___nit__model_base__MEntity__c_name(var255);
+var258 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var255);
 }
-((struct instance_standard__NativeArray*)var250)->values[1]=var258;
+((struct instance_core__NativeArray*)var250)->values[1]=var258;
 {
-var259 = ((val*(*)(val* self))(var250->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var250); /* native_to_s on <var250:NativeArray[String]>*/
+var259 = ((val*(*)(val* self))(var250->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var250); /* native_to_s on <var250:NativeArray[String]>*/
 }
 varonce249 = var250;
 {
-nit___nit__AbstractCompilerVisitor___require_declaration(self, var259); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___require_declaration(self, var259); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce260==NULL)) {
-var261 = NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String);
+var261 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String);
 if (likely(varonce262!=NULL)) {
 var263 = varonce262;
 } else {
 var264 = " = class_";
-var265 = standard___standard__NativeString___to_s_with_length(var264, 9l);
+var265 = core__flat___NativeString___to_s_full(var264, 9l, 9l);
 var263 = var265;
 varonce262 = var263;
 }
-((struct instance_standard__NativeArray*)var261)->values[1]=var263;
+((struct instance_core__NativeArray*)var261)->values[1]=var263;
 if (likely(varonce266!=NULL)) {
 var267 = varonce266;
 } else {
 var268 = ".color;";
-var269 = standard___standard__NativeString___to_s_with_length(var268, 7l);
+var269 = core__flat___NativeString___to_s_full(var268, 7l, 7l);
 var267 = var269;
 varonce266 = var267;
 }
-((struct instance_standard__NativeArray*)var261)->values[3]=var267;
+((struct instance_core__NativeArray*)var261)->values[3]=var267;
 } else {
 var261 = varonce260;
 varonce260 = NULL;
 }
-((struct instance_standard__NativeArray*)var261)->values[0]=var_cltype;
+((struct instance_core__NativeArray*)var261)->values[0]=var_cltype;
 {
 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
-var272 = var_mtype->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
+var272 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
 if (unlikely(var272 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var270 = var272;
@@ -1530,47 +1530,47 @@ RET_LABEL271:(void)0;
 }
 }
 {
-var273 = nit___nit__MClass___nit__model_base__MEntity__c_name(var270);
+var273 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var270);
 }
-((struct instance_standard__NativeArray*)var261)->values[2]=var273;
+((struct instance_core__NativeArray*)var261)->values[2]=var273;
 {
-var274 = ((val*(*)(val* self))(var261->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var261); /* native_to_s on <var261:NativeArray[String]>*/
+var274 = ((val*(*)(val* self))(var261->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var261); /* native_to_s on <var261:NativeArray[String]>*/
 }
 varonce260 = var261;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var274); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var274); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce275==NULL)) {
-var276 = NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String);
+var276 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String);
 if (likely(varonce277!=NULL)) {
 var278 = varonce277;
 } else {
 var279 = " = class_";
-var280 = standard___standard__NativeString___to_s_with_length(var279, 9l);
+var280 = core__flat___NativeString___to_s_full(var279, 9l, 9l);
 var278 = var280;
 varonce277 = var278;
 }
-((struct instance_standard__NativeArray*)var276)->values[1]=var278;
+((struct instance_core__NativeArray*)var276)->values[1]=var278;
 if (likely(varonce281!=NULL)) {
 var282 = varonce281;
 } else {
 var283 = ".id;";
-var284 = standard___standard__NativeString___to_s_with_length(var283, 4l);
+var284 = core__flat___NativeString___to_s_full(var283, 4l, 4l);
 var282 = var284;
 varonce281 = var282;
 }
-((struct instance_standard__NativeArray*)var276)->values[3]=var282;
+((struct instance_core__NativeArray*)var276)->values[3]=var282;
 } else {
 var276 = varonce275;
 varonce275 = NULL;
 }
-((struct instance_standard__NativeArray*)var276)->values[0]=var_idtype;
+((struct instance_core__NativeArray*)var276)->values[0]=var_idtype;
 {
 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
-var287 = var_mtype->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
+var287 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
 if (unlikely(var287 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var285 = var287;
@@ -1578,22 +1578,22 @@ RET_LABEL286:(void)0;
 }
 }
 {
-var288 = nit___nit__MClass___nit__model_base__MEntity__c_name(var285);
+var288 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var285);
 }
-((struct instance_standard__NativeArray*)var276)->values[2]=var288;
+((struct instance_core__NativeArray*)var276)->values[2]=var288;
 {
-var289 = ((val*(*)(val* self))(var276->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var276); /* native_to_s on <var276:NativeArray[String]>*/
+var289 = ((val*(*)(val* self))(var276->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var276); /* native_to_s on <var276:NativeArray[String]>*/
 }
 varonce275 = var276;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var289); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var289); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateErasureCompilerVisitor> */
-var292 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
+var292 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
 if (unlikely(var292 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
 fatal_exit(1);
 }
 var290 = var292;
@@ -1602,10 +1602,10 @@ RET_LABEL291:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var290) on <var290:AbstractCompiler(SeparateCompiler)> */
-var295 = var290->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var290:AbstractCompiler(SeparateCompiler)> */
+var295 = var290->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var290:AbstractCompiler(SeparateCompiler)> */
 if (unlikely(var295 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 522);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538);
 fatal_exit(1);
 }
 var293 = var295;
@@ -1614,10 +1614,10 @@ RET_LABEL294:(void)0;
 }
 {
 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var293) on <var293:ModelBuilder> */
-var298 = var293->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on <var293:ModelBuilder> */
+var298 = var293->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on <var293:ModelBuilder> */
 if (unlikely(var298 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base, 47);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base, 47);
 fatal_exit(1);
 }
 var296 = var298;
@@ -1626,10 +1626,10 @@ RET_LABEL297:(void)0;
 }
 {
 { /* Inline abstract_compiler#ToolContext#opt_typing_test_metrics (var296) on <var296:ToolContext> */
-var301 = var296->attrs[COLOR_nit__abstract_compiler__ToolContext___opt_typing_test_metrics].val; /* _opt_typing_test_metrics on <var296:ToolContext> */
+var301 = var296->attrs[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics].val; /* _opt_typing_test_metrics on <var296:ToolContext> */
 if (unlikely(var301 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 60);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 60);
 fatal_exit(1);
 }
 var299 = var301;
@@ -1647,10 +1647,10 @@ var305 = (short int)((long)(var302)>>2);
 if (var305){
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateErasureCompilerVisitor> */
-var308 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
+var308 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
 if (unlikely(var308 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
 fatal_exit(1);
 }
 var306 = var308;
@@ -1659,10 +1659,10 @@ RET_LABEL307:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_resolved (var306) on <var306:AbstractCompiler(SeparateCompiler)> */
-var311 = var306->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___count_type_test_resolved].val; /* _count_type_test_resolved on <var306:AbstractCompiler(SeparateCompiler)> */
+var311 = var306->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_resolved].val; /* _count_type_test_resolved on <var306:AbstractCompiler(SeparateCompiler)> */
 if (unlikely(var311 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_resolved");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1015);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1046);
 fatal_exit(1);
 }
 var309 = var311;
@@ -1672,7 +1672,7 @@ RET_LABEL310:(void)0;
 var_312 = var309;
 var_313 = var_tag;
 {
-var314 = standard___standard__HashMap___standard__abstract_collection__MapRead___91d_93d(var_312, var_313);
+var314 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_312, var_313);
 }
 {
 { /* Inline kernel#Int#+ (var314,1l) on <var314:nullable Object(Int)> */
@@ -1680,9 +1680,9 @@ var314 = standard___standard__HashMap___standard__abstract_collection__MapRead__
 /* <1l:Int> isa OTHER */
 var317 = 1; /* easy <1l:Int> isa OTHER*/
 if (unlikely(!var317)) {
-var_class_name320 = type_standard__Int.name;
+var_class_name320 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name320);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 537);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
 fatal_exit(1);
 }
 var321 = (long)(var314)>>2;
@@ -1694,46 +1694,46 @@ RET_LABEL316:(void)0;
 }
 {
 var323 = (val*)(var315<<2|1);
-standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var_312, var_313, var323); /* Direct call hash_collection#HashMap#[]= on <var_312:HashMap[String, Int]>*/
+core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_312, var_313, var323); /* Direct call hash_collection#HashMap#[]= on <var_312:HashMap[String, Int]>*/
 }
 if (unlikely(varonce324==NULL)) {
-var325 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var325 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce326!=NULL)) {
 var327 = varonce326;
 } else {
 var328 = "count_type_test_resolved_";
-var329 = standard___standard__NativeString___to_s_with_length(var328, 25l);
+var329 = core__flat___NativeString___to_s_full(var328, 25l, 25l);
 var327 = var329;
 varonce326 = var327;
 }
-((struct instance_standard__NativeArray*)var325)->values[0]=var327;
+((struct instance_core__NativeArray*)var325)->values[0]=var327;
 if (likely(varonce330!=NULL)) {
 var331 = varonce330;
 } else {
 var332 = "++;";
-var333 = standard___standard__NativeString___to_s_with_length(var332, 3l);
+var333 = core__flat___NativeString___to_s_full(var332, 3l, 3l);
 var331 = var333;
 varonce330 = var331;
 }
-((struct instance_standard__NativeArray*)var325)->values[2]=var331;
+((struct instance_core__NativeArray*)var325)->values[2]=var331;
 } else {
 var325 = varonce324;
 varonce324 = NULL;
 }
-((struct instance_standard__NativeArray*)var325)->values[1]=var_tag;
+((struct instance_core__NativeArray*)var325)->values[1]=var_tag;
 {
-var334 = ((val*(*)(val* self))(var325->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var325); /* native_to_s on <var325:NativeArray[String]>*/
+var334 = ((val*(*)(val* self))(var325->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var325); /* native_to_s on <var325:NativeArray[String]>*/
 }
 varonce324 = var325;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var334); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var334); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 } else {
 }
 } else {
 /* <var_mtype:MType> isa MVirtualType */
-cltype336 = type_nit__MVirtualType.color;
-idtype337 = type_nit__MVirtualType.id;
+cltype336 = type_nitc__MVirtualType.color;
+idtype337 = type_nitc__MVirtualType.id;
 if(cltype336 >= var_mtype->type->table_size) {
 var335 = 0;
 } else {
@@ -1742,26 +1742,26 @@ var335 = var_mtype->type->type_table[cltype336] == idtype337;
 if (var335){
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateErasureCompilerVisitor> */
-var340 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
+var340 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateErasureCompilerVisitor> */
 var338 = var340;
 RET_LABEL339:(void)0;
 }
 }
 if (var338 == NULL) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 555);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 555);
 fatal_exit(1);
 } else {
 { /* Inline abstract_compiler#StaticFrame#arguments (var338) on <var338:nullable StaticFrame> */
 if (unlikely(var338 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1835);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1921);
 fatal_exit(1);
 }
-var343 = var338->attrs[COLOR_nit__abstract_compiler__StaticFrame___arguments].val; /* _arguments on <var338:nullable StaticFrame> */
+var343 = var338->attrs[COLOR_nitc__abstract_compiler__StaticFrame___arguments].val; /* _arguments on <var338:nullable StaticFrame> */
 if (unlikely(var343 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _arguments");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1835);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1921);
 fatal_exit(1);
 }
 var341 = var343;
@@ -1769,15 +1769,15 @@ RET_LABEL342:(void)0;
 }
 }
 {
-var344 = standard___standard__SequenceRead___Collection__first(var341);
+var344 = core___core__SequenceRead___Collection__first(var341);
 }
 var_recv = var344;
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_recv) on <var_recv:RuntimeVariable> */
-var347 = var_recv->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_recv:RuntimeVariable> */
+var347 = var_recv->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_recv:RuntimeVariable> */
 if (unlikely(var347 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var345 = var347;
@@ -1785,41 +1785,41 @@ RET_LABEL346:(void)0;
 }
 }
 {
-var348 = ((short int(*)(val* self))(var345->class->vft[COLOR_nit__abstract_compiler__MType__is_c_primitive]))(var345); /* is_c_primitive on <var345:MType>*/
+var348 = ((short int(*)(val* self))(var345->class->vft[COLOR_nitc__abstract_compiler__MType__is_c_primitive]))(var345); /* is_c_primitive on <var345:MType>*/
 }
 var349 = !var348;
 if (var349){
 if (unlikely(varonce350==NULL)) {
-var351 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var351 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce352!=NULL)) {
 var353 = varonce352;
 } else {
 var354 = "->class->";
-var355 = standard___standard__NativeString___to_s_with_length(var354, 9l);
+var355 = core__flat___NativeString___to_s_full(var354, 9l, 9l);
 var353 = var355;
 varonce352 = var353;
 }
-((struct instance_standard__NativeArray*)var351)->values[1]=var353;
+((struct instance_core__NativeArray*)var351)->values[1]=var353;
 } else {
 var351 = varonce350;
 varonce350 = NULL;
 }
 {
-var356 = ((val*(*)(val* self))(var_recv->class->vft[COLOR_standard__string__Object__to_s]))(var_recv); /* to_s on <var_recv:RuntimeVariable>*/
+var356 = ((val*(*)(val* self))(var_recv->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_recv); /* to_s on <var_recv:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var351)->values[0]=var356;
+((struct instance_core__NativeArray*)var351)->values[0]=var356;
 {
-var357 = ((val*(*)(val* self))(var351->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var351); /* native_to_s on <var351:NativeArray[String]>*/
+var357 = ((val*(*)(val* self))(var351->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var351); /* native_to_s on <var351:NativeArray[String]>*/
 }
 varonce350 = var351;
 var_recv_ptr = var357;
 } else {
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_recv) on <var_recv:RuntimeVariable> */
-var360 = var_recv->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_recv:RuntimeVariable> */
+var360 = var_recv->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_recv:RuntimeVariable> */
 if (unlikely(var360 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var358 = var360;
@@ -1827,8 +1827,8 @@ RET_LABEL359:(void)0;
 }
 }
 /* <var358:MType> isa MClassType */
-cltype362 = type_nit__MClassType.color;
-idtype363 = type_nit__MClassType.id;
+cltype362 = type_nitc__MClassType.color;
+idtype363 = type_nitc__MClassType.id;
 if(cltype362 >= var358->type->table_size) {
 var361 = 0;
 } else {
@@ -1837,15 +1837,15 @@ var361 = var358->type->type_table[cltype362] == idtype363;
 if (unlikely(!var361)) {
 var_class_name364 = var358 == NULL ? "null" : var358->type->name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name364);
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 560);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 560);
 fatal_exit(1);
 }
 {
 { /* Inline model#MClassType#mclass (var358) on <var358:MType(MClassType)> */
-var367 = var358->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var358:MType(MClassType)> */
+var367 = var358->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var358:MType(MClassType)> */
 if (unlikely(var367 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var365 = var367;
@@ -1854,61 +1854,61 @@ RET_LABEL366:(void)0;
 }
 var_mclass368 = var365;
 if (unlikely(varonce369==NULL)) {
-var370 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var370 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce371!=NULL)) {
 var372 = varonce371;
 } else {
 var373 = "class_";
-var374 = standard___standard__NativeString___to_s_with_length(var373, 6l);
+var374 = core__flat___NativeString___to_s_full(var373, 6l, 6l);
 var372 = var374;
 varonce371 = var372;
 }
-((struct instance_standard__NativeArray*)var370)->values[0]=var372;
+((struct instance_core__NativeArray*)var370)->values[0]=var372;
 } else {
 var370 = varonce369;
 varonce369 = NULL;
 }
 {
-var375 = nit___nit__MClass___nit__model_base__MEntity__c_name(var_mclass368);
+var375 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass368);
 }
-((struct instance_standard__NativeArray*)var370)->values[1]=var375;
+((struct instance_core__NativeArray*)var370)->values[1]=var375;
 {
-var376 = ((val*(*)(val* self))(var370->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var370); /* native_to_s on <var370:NativeArray[String]>*/
+var376 = ((val*(*)(val* self))(var370->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var370); /* native_to_s on <var370:NativeArray[String]>*/
 }
 varonce369 = var370;
 {
-nit___nit__AbstractCompilerVisitor___require_declaration(self, var376); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___require_declaration(self, var376); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce377==NULL)) {
-var378 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var378 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce379!=NULL)) {
 var380 = varonce379;
 } else {
 var381 = "class_";
-var382 = standard___standard__NativeString___to_s_with_length(var381, 6l);
+var382 = core__flat___NativeString___to_s_full(var381, 6l, 6l);
 var380 = var382;
 varonce379 = var380;
 }
-((struct instance_standard__NativeArray*)var378)->values[0]=var380;
+((struct instance_core__NativeArray*)var378)->values[0]=var380;
 if (likely(varonce383!=NULL)) {
 var384 = varonce383;
 } else {
 var385 = ".";
-var386 = standard___standard__NativeString___to_s_with_length(var385, 1l);
+var386 = core__flat___NativeString___to_s_full(var385, 1l, 1l);
 var384 = var386;
 varonce383 = var384;
 }
-((struct instance_standard__NativeArray*)var378)->values[2]=var384;
+((struct instance_core__NativeArray*)var378)->values[2]=var384;
 } else {
 var378 = varonce377;
 varonce377 = NULL;
 }
 {
-var387 = nit___nit__MClass___nit__model_base__MEntity__c_name(var_mclass368);
+var387 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass368);
 }
-((struct instance_standard__NativeArray*)var378)->values[1]=var387;
+((struct instance_core__NativeArray*)var378)->values[1]=var387;
 {
-var388 = ((val*(*)(val* self))(var378->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var378); /* native_to_s on <var378:NativeArray[String]>*/
+var388 = ((val*(*)(val* self))(var378->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var378); /* native_to_s on <var378:NativeArray[String]>*/
 }
 varonce377 = var378;
 var_recv_ptr = var388;
@@ -1917,52 +1917,52 @@ if (likely(varonce389!=NULL)) {
 var390 = varonce389;
 } else {
 var391 = "entry";
-var392 = standard___standard__NativeString___to_s_with_length(var391, 5l);
+var392 = core__flat___NativeString___to_s_full(var391, 5l, 5l);
 var390 = var392;
 varonce389 = var390;
 }
 {
-var393 = nit___nit__AbstractCompilerVisitor___get_name(self, var390);
+var393 = nitc___nitc__AbstractCompilerVisitor___get_name(self, var390);
 }
 var_entry = var393;
 if (unlikely(varonce394==NULL)) {
-var395 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var395 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce396!=NULL)) {
 var397 = varonce396;
 } else {
 var398 = "struct vts_entry ";
-var399 = standard___standard__NativeString___to_s_with_length(var398, 17l);
+var399 = core__flat___NativeString___to_s_full(var398, 17l, 17l);
 var397 = var399;
 varonce396 = var397;
 }
-((struct instance_standard__NativeArray*)var395)->values[0]=var397;
+((struct instance_core__NativeArray*)var395)->values[0]=var397;
 if (likely(varonce400!=NULL)) {
 var401 = varonce400;
 } else {
 var402 = ";";
-var403 = standard___standard__NativeString___to_s_with_length(var402, 1l);
+var403 = core__flat___NativeString___to_s_full(var402, 1l, 1l);
 var401 = var403;
 varonce400 = var401;
 }
-((struct instance_standard__NativeArray*)var395)->values[2]=var401;
+((struct instance_core__NativeArray*)var395)->values[2]=var401;
 } else {
 var395 = varonce394;
 varonce394 = NULL;
 }
-((struct instance_standard__NativeArray*)var395)->values[1]=var_entry;
+((struct instance_core__NativeArray*)var395)->values[1]=var_entry;
 {
-var404 = ((val*(*)(val* self))(var395->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var395); /* native_to_s on <var395:NativeArray[String]>*/
+var404 = ((val*(*)(val* self))(var395->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var395); /* native_to_s on <var395:NativeArray[String]>*/
 }
 varonce394 = var395;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var404); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var404); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 {
 { /* Inline model#MVirtualType#mproperty (var_mtype) on <var_mtype:MType(MVirtualType)> */
-var407 = var_mtype->attrs[COLOR_nit__model__MVirtualType___mproperty].val; /* _mproperty on <var_mtype:MType(MVirtualType)> */
+var407 = var_mtype->attrs[COLOR_nitc__model__MVirtualType___mproperty].val; /* _mproperty on <var_mtype:MType(MVirtualType)> */
 if (unlikely(var407 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1344);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1369);
 fatal_exit(1);
 }
 var405 = var407;
@@ -1970,52 +1970,52 @@ RET_LABEL406:(void)0;
 }
 }
 {
-var408 = nit__separate_compiler___MEntity___const_color(var405);
+var408 = nitc__separate_compiler___MEntity___const_color(var405);
 }
 {
-nit___nit__AbstractCompilerVisitor___require_declaration(self, var408); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___require_declaration(self, var408); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce409==NULL)) {
-var410 = NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String);
+var410 = NEW_core__NativeArray(6l, &type_core__NativeArray__core__String);
 if (likely(varonce411!=NULL)) {
 var412 = varonce411;
 } else {
 var413 = " = ";
-var414 = standard___standard__NativeString___to_s_with_length(var413, 3l);
+var414 = core__flat___NativeString___to_s_full(var413, 3l, 3l);
 var412 = var414;
 varonce411 = var412;
 }
-((struct instance_standard__NativeArray*)var410)->values[1]=var412;
+((struct instance_core__NativeArray*)var410)->values[1]=var412;
 if (likely(varonce415!=NULL)) {
 var416 = varonce415;
 } else {
 var417 = "vts_table->vts[";
-var418 = standard___standard__NativeString___to_s_with_length(var417, 15l);
+var418 = core__flat___NativeString___to_s_full(var417, 15l, 15l);
 var416 = var418;
 varonce415 = var416;
 }
-((struct instance_standard__NativeArray*)var410)->values[3]=var416;
+((struct instance_core__NativeArray*)var410)->values[3]=var416;
 if (likely(varonce419!=NULL)) {
 var420 = varonce419;
 } else {
 var421 = "];";
-var422 = standard___standard__NativeString___to_s_with_length(var421, 2l);
+var422 = core__flat___NativeString___to_s_full(var421, 2l, 2l);
 var420 = var422;
 varonce419 = var420;
 }
-((struct instance_standard__NativeArray*)var410)->values[5]=var420;
+((struct instance_core__NativeArray*)var410)->values[5]=var420;
 } else {
 var410 = varonce409;
 varonce409 = NULL;
 }
-((struct instance_standard__NativeArray*)var410)->values[0]=var_entry;
-((struct instance_standard__NativeArray*)var410)->values[2]=var_recv_ptr;
+((struct instance_core__NativeArray*)var410)->values[0]=var_entry;
+((struct instance_core__NativeArray*)var410)->values[2]=var_recv_ptr;
 {
 { /* Inline model#MVirtualType#mproperty (var_mtype) on <var_mtype:MType(MVirtualType)> */
-var425 = var_mtype->attrs[COLOR_nit__model__MVirtualType___mproperty].val; /* _mproperty on <var_mtype:MType(MVirtualType)> */
+var425 = var_mtype->attrs[COLOR_nitc__model__MVirtualType___mproperty].val; /* _mproperty on <var_mtype:MType(MVirtualType)> */
 if (unlikely(var425 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1344);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1369);
 fatal_exit(1);
 }
 var423 = var425;
@@ -2023,81 +2023,81 @@ RET_LABEL424:(void)0;
 }
 }
 {
-var426 = nit__separate_compiler___MEntity___const_color(var423);
+var426 = nitc__separate_compiler___MEntity___const_color(var423);
 }
-((struct instance_standard__NativeArray*)var410)->values[4]=var426;
+((struct instance_core__NativeArray*)var410)->values[4]=var426;
 {
-var427 = ((val*(*)(val* self))(var410->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var410); /* native_to_s on <var410:NativeArray[String]>*/
+var427 = ((val*(*)(val* self))(var410->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var410); /* native_to_s on <var410:NativeArray[String]>*/
 }
 varonce409 = var410;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var427); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var427); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce428==NULL)) {
-var429 = NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String);
+var429 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String);
 if (likely(varonce430!=NULL)) {
 var431 = varonce430;
 } else {
 var432 = " = ";
-var433 = standard___standard__NativeString___to_s_with_length(var432, 3l);
+var433 = core__flat___NativeString___to_s_full(var432, 3l, 3l);
 var431 = var433;
 varonce430 = var431;
 }
-((struct instance_standard__NativeArray*)var429)->values[1]=var431;
+((struct instance_core__NativeArray*)var429)->values[1]=var431;
 if (likely(varonce434!=NULL)) {
 var435 = varonce434;
 } else {
 var436 = ".class->color;";
-var437 = standard___standard__NativeString___to_s_with_length(var436, 14l);
+var437 = core__flat___NativeString___to_s_full(var436, 14l, 14l);
 var435 = var437;
 varonce434 = var435;
 }
-((struct instance_standard__NativeArray*)var429)->values[3]=var435;
+((struct instance_core__NativeArray*)var429)->values[3]=var435;
 } else {
 var429 = varonce428;
 varonce428 = NULL;
 }
-((struct instance_standard__NativeArray*)var429)->values[0]=var_cltype;
-((struct instance_standard__NativeArray*)var429)->values[2]=var_entry;
+((struct instance_core__NativeArray*)var429)->values[0]=var_cltype;
+((struct instance_core__NativeArray*)var429)->values[2]=var_entry;
 {
-var438 = ((val*(*)(val* self))(var429->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var429); /* native_to_s on <var429:NativeArray[String]>*/
+var438 = ((val*(*)(val* self))(var429->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var429); /* native_to_s on <var429:NativeArray[String]>*/
 }
 varonce428 = var429;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var438); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var438); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce439==NULL)) {
-var440 = NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String);
+var440 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String);
 if (likely(varonce441!=NULL)) {
 var442 = varonce441;
 } else {
 var443 = " = ";
-var444 = standard___standard__NativeString___to_s_with_length(var443, 3l);
+var444 = core__flat___NativeString___to_s_full(var443, 3l, 3l);
 var442 = var444;
 varonce441 = var442;
 }
-((struct instance_standard__NativeArray*)var440)->values[1]=var442;
+((struct instance_core__NativeArray*)var440)->values[1]=var442;
 if (likely(varonce445!=NULL)) {
 var446 = varonce445;
 } else {
 var447 = ".class->id;";
-var448 = standard___standard__NativeString___to_s_with_length(var447, 11l);
+var448 = core__flat___NativeString___to_s_full(var447, 11l, 11l);
 var446 = var448;
 varonce445 = var446;
 }
-((struct instance_standard__NativeArray*)var440)->values[3]=var446;
+((struct instance_core__NativeArray*)var440)->values[3]=var446;
 } else {
 var440 = varonce439;
 varonce439 = NULL;
 }
-((struct instance_standard__NativeArray*)var440)->values[0]=var_idtype;
-((struct instance_standard__NativeArray*)var440)->values[2]=var_entry;
+((struct instance_core__NativeArray*)var440)->values[0]=var_idtype;
+((struct instance_core__NativeArray*)var440)->values[2]=var_entry;
 {
-var449 = ((val*(*)(val* self))(var440->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var440); /* native_to_s on <var440:NativeArray[String]>*/
+var449 = ((val*(*)(val* self))(var440->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var440); /* native_to_s on <var440:NativeArray[String]>*/
 }
 varonce439 = var440;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var449); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var449); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 var_451 = var_maybe_null;
 if (var_maybe_null){
@@ -2105,12 +2105,12 @@ if (likely(varonce452!=NULL)) {
 var453 = varonce452;
 } else {
 var454 = "0";
-var455 = standard___standard__NativeString___to_s_with_length(var454, 1l);
+var455 = core__flat___NativeString___to_s_full(var454, 1l, 1l);
 var453 = var455;
 varonce452 = var453;
 }
 {
-var456 = ((short int(*)(val* self, val* p0))(var_accept_null->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_accept_null, var453); /* == on <var_accept_null:String>*/
+var456 = ((short int(*)(val* self, val* p0))(var_accept_null->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_accept_null, var453); /* == on <var_accept_null:String>*/
 }
 var450 = var456;
 } else {
@@ -2121,91 +2121,91 @@ if (likely(varonce457!=NULL)) {
 var458 = varonce457;
 } else {
 var459 = "is_nullable";
-var460 = standard___standard__NativeString___to_s_with_length(var459, 11l);
+var460 = core__flat___NativeString___to_s_full(var459, 11l, 11l);
 var458 = var460;
 varonce457 = var458;
 }
 {
-var461 = nit___nit__AbstractCompilerVisitor___get_name(self, var458);
+var461 = nitc___nitc__AbstractCompilerVisitor___get_name(self, var458);
 }
 var_is_nullable = var461;
 if (unlikely(varonce462==NULL)) {
-var463 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var463 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce464!=NULL)) {
 var465 = varonce464;
 } else {
 var466 = "short int ";
-var467 = standard___standard__NativeString___to_s_with_length(var466, 10l);
+var467 = core__flat___NativeString___to_s_full(var466, 10l, 10l);
 var465 = var467;
 varonce464 = var465;
 }
-((struct instance_standard__NativeArray*)var463)->values[0]=var465;
+((struct instance_core__NativeArray*)var463)->values[0]=var465;
 if (likely(varonce468!=NULL)) {
 var469 = varonce468;
 } else {
 var470 = ";";
-var471 = standard___standard__NativeString___to_s_with_length(var470, 1l);
+var471 = core__flat___NativeString___to_s_full(var470, 1l, 1l);
 var469 = var471;
 varonce468 = var469;
 }
-((struct instance_standard__NativeArray*)var463)->values[2]=var469;
+((struct instance_core__NativeArray*)var463)->values[2]=var469;
 } else {
 var463 = varonce462;
 varonce462 = NULL;
 }
-((struct instance_standard__NativeArray*)var463)->values[1]=var_is_nullable;
+((struct instance_core__NativeArray*)var463)->values[1]=var_is_nullable;
 {
-var472 = ((val*(*)(val* self))(var463->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var463); /* native_to_s on <var463:NativeArray[String]>*/
+var472 = ((val*(*)(val* self))(var463->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var463); /* native_to_s on <var463:NativeArray[String]>*/
 }
 varonce462 = var463;
 {
-nit___nit__AbstractCompilerVisitor___add_decl(self, var472); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add_decl(self, var472); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce473==NULL)) {
-var474 = NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String);
+var474 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String);
 if (likely(varonce475!=NULL)) {
 var476 = varonce475;
 } else {
 var477 = " = ";
-var478 = standard___standard__NativeString___to_s_with_length(var477, 3l);
+var478 = core__flat___NativeString___to_s_full(var477, 3l, 3l);
 var476 = var478;
 varonce475 = var476;
 }
-((struct instance_standard__NativeArray*)var474)->values[1]=var476;
+((struct instance_core__NativeArray*)var474)->values[1]=var476;
 if (likely(varonce479!=NULL)) {
 var480 = varonce479;
 } else {
 var481 = ".is_nullable;";
-var482 = standard___standard__NativeString___to_s_with_length(var481, 13l);
+var482 = core__flat___NativeString___to_s_full(var481, 13l, 13l);
 var480 = var482;
 varonce479 = var480;
 }
-((struct instance_standard__NativeArray*)var474)->values[3]=var480;
+((struct instance_core__NativeArray*)var474)->values[3]=var480;
 } else {
 var474 = varonce473;
 varonce473 = NULL;
 }
-((struct instance_standard__NativeArray*)var474)->values[0]=var_is_nullable;
-((struct instance_standard__NativeArray*)var474)->values[2]=var_entry;
+((struct instance_core__NativeArray*)var474)->values[0]=var_is_nullable;
+((struct instance_core__NativeArray*)var474)->values[2]=var_entry;
 {
-var483 = ((val*(*)(val* self))(var474->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var474); /* native_to_s on <var474:NativeArray[String]>*/
+var483 = ((val*(*)(val* self))(var474->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var474); /* native_to_s on <var474:NativeArray[String]>*/
 }
 varonce473 = var474;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var483); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var483); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 {
-var484 = standard___standard__String___Object__to_s(var_is_nullable);
+var484 = core___core__String___Object__to_s(var_is_nullable);
 }
 var_accept_null = var484;
 } else {
 }
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateErasureCompilerVisitor> */
-var487 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
+var487 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
 if (unlikely(var487 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
 fatal_exit(1);
 }
 var485 = var487;
@@ -2214,10 +2214,10 @@ RET_LABEL486:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var485) on <var485:AbstractCompiler(SeparateCompiler)> */
-var490 = var485->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var485:AbstractCompiler(SeparateCompiler)> */
+var490 = var485->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var485:AbstractCompiler(SeparateCompiler)> */
 if (unlikely(var490 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 522);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538);
 fatal_exit(1);
 }
 var488 = var490;
@@ -2226,10 +2226,10 @@ RET_LABEL489:(void)0;
 }
 {
 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var488) on <var488:ModelBuilder> */
-var493 = var488->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on <var488:ModelBuilder> */
+var493 = var488->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on <var488:ModelBuilder> */
 if (unlikely(var493 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base, 47);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base, 47);
 fatal_exit(1);
 }
 var491 = var493;
@@ -2238,10 +2238,10 @@ RET_LABEL492:(void)0;
 }
 {
 { /* Inline abstract_compiler#ToolContext#opt_typing_test_metrics (var491) on <var491:ToolContext> */
-var496 = var491->attrs[COLOR_nit__abstract_compiler__ToolContext___opt_typing_test_metrics].val; /* _opt_typing_test_metrics on <var491:ToolContext> */
+var496 = var491->attrs[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics].val; /* _opt_typing_test_metrics on <var491:ToolContext> */
 if (unlikely(var496 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 60);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 60);
 fatal_exit(1);
 }
 var494 = var496;
@@ -2259,10 +2259,10 @@ var500 = (short int)((long)(var497)>>2);
 if (var500){
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateErasureCompilerVisitor> */
-var503 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
+var503 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
 if (unlikely(var503 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
 fatal_exit(1);
 }
 var501 = var503;
@@ -2271,10 +2271,10 @@ RET_LABEL502:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_unresolved (var501) on <var501:AbstractCompiler(SeparateCompiler)> */
-var506 = var501->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___count_type_test_unresolved].val; /* _count_type_test_unresolved on <var501:AbstractCompiler(SeparateCompiler)> */
+var506 = var501->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_unresolved].val; /* _count_type_test_unresolved on <var501:AbstractCompiler(SeparateCompiler)> */
 if (unlikely(var506 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_unresolved");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1016);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1047);
 fatal_exit(1);
 }
 var504 = var506;
@@ -2284,7 +2284,7 @@ RET_LABEL505:(void)0;
 var_507 = var504;
 var_508 = var_tag;
 {
-var509 = standard___standard__HashMap___standard__abstract_collection__MapRead___91d_93d(var_507, var_508);
+var509 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_507, var_508);
 }
 {
 { /* Inline kernel#Int#+ (var509,1l) on <var509:nullable Object(Int)> */
@@ -2292,9 +2292,9 @@ var509 = standard___standard__HashMap___standard__abstract_collection__MapRead__
 /* <1l:Int> isa OTHER */
 var512 = 1; /* easy <1l:Int> isa OTHER*/
 if (unlikely(!var512)) {
-var_class_name515 = type_standard__Int.name;
+var_class_name515 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name515);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 537);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
 fatal_exit(1);
 }
 var516 = (long)(var509)>>2;
@@ -2306,338 +2306,338 @@ RET_LABEL511:(void)0;
 }
 {
 var518 = (val*)(var510<<2|1);
-standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var_507, var_508, var518); /* Direct call hash_collection#HashMap#[]= on <var_507:HashMap[String, Int]>*/
+core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_507, var_508, var518); /* Direct call hash_collection#HashMap#[]= on <var_507:HashMap[String, Int]>*/
 }
 if (unlikely(varonce519==NULL)) {
-var520 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var520 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce521!=NULL)) {
 var522 = varonce521;
 } else {
 var523 = "count_type_test_unresolved_";
-var524 = standard___standard__NativeString___to_s_with_length(var523, 27l);
+var524 = core__flat___NativeString___to_s_full(var523, 27l, 27l);
 var522 = var524;
 varonce521 = var522;
 }
-((struct instance_standard__NativeArray*)var520)->values[0]=var522;
+((struct instance_core__NativeArray*)var520)->values[0]=var522;
 if (likely(varonce525!=NULL)) {
 var526 = varonce525;
 } else {
 var527 = "++;";
-var528 = standard___standard__NativeString___to_s_with_length(var527, 3l);
+var528 = core__flat___NativeString___to_s_full(var527, 3l, 3l);
 var526 = var528;
 varonce525 = var526;
 }
-((struct instance_standard__NativeArray*)var520)->values[2]=var526;
+((struct instance_core__NativeArray*)var520)->values[2]=var526;
 } else {
 var520 = varonce519;
 varonce519 = NULL;
 }
-((struct instance_standard__NativeArray*)var520)->values[1]=var_tag;
+((struct instance_core__NativeArray*)var520)->values[1]=var_tag;
 {
-var529 = ((val*(*)(val* self))(var520->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var520); /* native_to_s on <var520:NativeArray[String]>*/
+var529 = ((val*(*)(val* self))(var520->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var520); /* native_to_s on <var520:NativeArray[String]>*/
 }
 varonce519 = var520;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var529); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var529); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 } else {
 }
 } else {
 if (unlikely(varonce530==NULL)) {
-var531 = NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String);
+var531 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String);
 if (likely(varonce532!=NULL)) {
 var533 = varonce532;
 } else {
 var534 = "type_test(";
-var535 = standard___standard__NativeString___to_s_with_length(var534, 10l);
+var535 = core__flat___NativeString___to_s_full(var534, 10l, 10l);
 var533 = var535;
 varonce532 = var533;
 }
-((struct instance_standard__NativeArray*)var531)->values[0]=var533;
+((struct instance_core__NativeArray*)var531)->values[0]=var533;
 if (likely(varonce536!=NULL)) {
 var537 = varonce536;
 } else {
 var538 = ", ";
-var539 = standard___standard__NativeString___to_s_with_length(var538, 2l);
+var539 = core__flat___NativeString___to_s_full(var538, 2l, 2l);
 var537 = var539;
 varonce536 = var537;
 }
-((struct instance_standard__NativeArray*)var531)->values[2]=var537;
+((struct instance_core__NativeArray*)var531)->values[2]=var537;
 if (likely(varonce540!=NULL)) {
 var541 = varonce540;
 } else {
 var542 = ")";
-var543 = standard___standard__NativeString___to_s_with_length(var542, 1l);
+var543 = core__flat___NativeString___to_s_full(var542, 1l, 1l);
 var541 = var543;
 varonce540 = var541;
 }
-((struct instance_standard__NativeArray*)var531)->values[4]=var541;
+((struct instance_core__NativeArray*)var531)->values[4]=var541;
 } else {
 var531 = varonce530;
 varonce530 = NULL;
 }
 {
-var544 = nit___nit__RuntimeVariable___standard__string__Object__inspect(var_value);
+var544 = nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_value);
 }
-((struct instance_standard__NativeArray*)var531)->values[1]=var544;
+((struct instance_core__NativeArray*)var531)->values[1]=var544;
 {
-var545 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_standard__string__Object__to_s]))(var_mtype); /* to_s on <var_mtype:MType>*/
+var545 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on <var_mtype:MType>*/
 }
-((struct instance_standard__NativeArray*)var531)->values[3]=var545;
+((struct instance_core__NativeArray*)var531)->values[3]=var545;
 {
-var546 = ((val*(*)(val* self))(var531->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var531); /* native_to_s on <var531:NativeArray[String]>*/
+var546 = ((val*(*)(val* self))(var531->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var531); /* native_to_s on <var531:NativeArray[String]>*/
 }
 varonce530 = var531;
 {
-nit___nit__AbstractCompilerVisitor___debug(self, var546); /* Direct call abstract_compiler#AbstractCompilerVisitor#debug on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___debug(self, var546); /* Direct call abstract_compiler#AbstractCompilerVisitor#debug on <self:SeparateErasureCompilerVisitor>*/
 }
 PRINT_ERROR("Runtime error: %s", "Aborted");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 582);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 582);
 fatal_exit(1);
 }
 }
 if (var_maybe_null){
 if (unlikely(varonce547==NULL)) {
-var548 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var548 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce549!=NULL)) {
 var550 = varonce549;
 } else {
 var551 = "if(";
-var552 = standard___standard__NativeString___to_s_with_length(var551, 3l);
+var552 = core__flat___NativeString___to_s_full(var551, 3l, 3l);
 var550 = var552;
 varonce549 = var550;
 }
-((struct instance_standard__NativeArray*)var548)->values[0]=var550;
+((struct instance_core__NativeArray*)var548)->values[0]=var550;
 if (likely(varonce553!=NULL)) {
 var554 = varonce553;
 } else {
 var555 = " == NULL) {";
-var556 = standard___standard__NativeString___to_s_with_length(var555, 11l);
+var556 = core__flat___NativeString___to_s_full(var555, 11l, 11l);
 var554 = var556;
 varonce553 = var554;
 }
-((struct instance_standard__NativeArray*)var548)->values[2]=var554;
+((struct instance_core__NativeArray*)var548)->values[2]=var554;
 } else {
 var548 = varonce547;
 varonce547 = NULL;
 }
 {
-var557 = ((val*(*)(val* self))(var_value->class->vft[COLOR_standard__string__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
+var557 = ((val*(*)(val* self))(var_value->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var548)->values[1]=var557;
+((struct instance_core__NativeArray*)var548)->values[1]=var557;
 {
-var558 = ((val*(*)(val* self))(var548->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var548); /* native_to_s on <var548:NativeArray[String]>*/
+var558 = ((val*(*)(val* self))(var548->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var548); /* native_to_s on <var548:NativeArray[String]>*/
 }
 varonce547 = var548;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var558); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var558); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce559==NULL)) {
-var560 = NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String);
+var560 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String);
 if (likely(varonce561!=NULL)) {
 var562 = varonce561;
 } else {
 var563 = " = ";
-var564 = standard___standard__NativeString___to_s_with_length(var563, 3l);
+var564 = core__flat___NativeString___to_s_full(var563, 3l, 3l);
 var562 = var564;
 varonce561 = var562;
 }
-((struct instance_standard__NativeArray*)var560)->values[1]=var562;
+((struct instance_core__NativeArray*)var560)->values[1]=var562;
 if (likely(varonce565!=NULL)) {
 var566 = varonce565;
 } else {
 var567 = ";";
-var568 = standard___standard__NativeString___to_s_with_length(var567, 1l);
+var568 = core__flat___NativeString___to_s_full(var567, 1l, 1l);
 var566 = var568;
 varonce565 = var566;
 }
-((struct instance_standard__NativeArray*)var560)->values[3]=var566;
+((struct instance_core__NativeArray*)var560)->values[3]=var566;
 } else {
 var560 = varonce559;
 varonce559 = NULL;
 }
 {
-var569 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
+var569 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var560)->values[0]=var569;
-((struct instance_standard__NativeArray*)var560)->values[2]=var_accept_null;
+((struct instance_core__NativeArray*)var560)->values[0]=var569;
+((struct instance_core__NativeArray*)var560)->values[2]=var_accept_null;
 {
-var570 = ((val*(*)(val* self))(var560->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var560); /* native_to_s on <var560:NativeArray[String]>*/
+var570 = ((val*(*)(val* self))(var560->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var560); /* native_to_s on <var560:NativeArray[String]>*/
 }
 varonce559 = var560;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var570); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var570); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (likely(varonce571!=NULL)) {
 var572 = varonce571;
 } else {
 var573 = "} else {";
-var574 = standard___standard__NativeString___to_s_with_length(var573, 8l);
+var574 = core__flat___NativeString___to_s_full(var573, 8l, 8l);
 var572 = var574;
 varonce571 = var572;
 }
 {
-nit___nit__AbstractCompilerVisitor___add(self, var572); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var572); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 } else {
 }
 if (unlikely(varonce575==NULL)) {
-var576 = NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String);
+var576 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String);
 if (likely(varonce577!=NULL)) {
 var578 = varonce577;
 } else {
 var579 = "if(";
-var580 = standard___standard__NativeString___to_s_with_length(var579, 3l);
+var580 = core__flat___NativeString___to_s_full(var579, 3l, 3l);
 var578 = var580;
 varonce577 = var578;
 }
-((struct instance_standard__NativeArray*)var576)->values[0]=var578;
+((struct instance_core__NativeArray*)var576)->values[0]=var578;
 if (likely(varonce581!=NULL)) {
 var582 = varonce581;
 } else {
 var583 = " >= ";
-var584 = standard___standard__NativeString___to_s_with_length(var583, 4l);
+var584 = core__flat___NativeString___to_s_full(var583, 4l, 4l);
 var582 = var584;
 varonce581 = var582;
 }
-((struct instance_standard__NativeArray*)var576)->values[2]=var582;
+((struct instance_core__NativeArray*)var576)->values[2]=var582;
 if (likely(varonce585!=NULL)) {
 var586 = varonce585;
 } else {
 var587 = "type_table->size) {";
-var588 = standard___standard__NativeString___to_s_with_length(var587, 19l);
+var588 = core__flat___NativeString___to_s_full(var587, 19l, 19l);
 var586 = var588;
 varonce585 = var586;
 }
-((struct instance_standard__NativeArray*)var576)->values[4]=var586;
+((struct instance_core__NativeArray*)var576)->values[4]=var586;
 } else {
 var576 = varonce575;
 varonce575 = NULL;
 }
-((struct instance_standard__NativeArray*)var576)->values[1]=var_cltype;
-((struct instance_standard__NativeArray*)var576)->values[3]=var_class_ptr;
+((struct instance_core__NativeArray*)var576)->values[1]=var_cltype;
+((struct instance_core__NativeArray*)var576)->values[3]=var_class_ptr;
 {
-var589 = ((val*(*)(val* self))(var576->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var576); /* native_to_s on <var576:NativeArray[String]>*/
+var589 = ((val*(*)(val* self))(var576->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var576); /* native_to_s on <var576:NativeArray[String]>*/
 }
 varonce575 = var576;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var589); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var589); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce590==NULL)) {
-var591 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var591 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce592!=NULL)) {
 var593 = varonce592;
 } else {
 var594 = " = 0;";
-var595 = standard___standard__NativeString___to_s_with_length(var594, 5l);
+var595 = core__flat___NativeString___to_s_full(var594, 5l, 5l);
 var593 = var595;
 varonce592 = var593;
 }
-((struct instance_standard__NativeArray*)var591)->values[1]=var593;
+((struct instance_core__NativeArray*)var591)->values[1]=var593;
 } else {
 var591 = varonce590;
 varonce590 = NULL;
 }
 {
-var596 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
+var596 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var591)->values[0]=var596;
+((struct instance_core__NativeArray*)var591)->values[0]=var596;
 {
-var597 = ((val*(*)(val* self))(var591->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var591); /* native_to_s on <var591:NativeArray[String]>*/
+var597 = ((val*(*)(val* self))(var591->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var591); /* native_to_s on <var591:NativeArray[String]>*/
 }
 varonce590 = var591;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var597); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var597); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (likely(varonce598!=NULL)) {
 var599 = varonce598;
 } else {
 var600 = "} else {";
-var601 = standard___standard__NativeString___to_s_with_length(var600, 8l);
+var601 = core__flat___NativeString___to_s_full(var600, 8l, 8l);
 var599 = var601;
 varonce598 = var599;
 }
 {
-nit___nit__AbstractCompilerVisitor___add(self, var599); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var599); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce602==NULL)) {
-var603 = NEW_standard__NativeArray(8l, &type_standard__NativeArray__standard__String);
+var603 = NEW_core__NativeArray(8l, &type_core__NativeArray__core__String);
 if (likely(varonce604!=NULL)) {
 var605 = varonce604;
 } else {
 var606 = " = ";
-var607 = standard___standard__NativeString___to_s_with_length(var606, 3l);
+var607 = core__flat___NativeString___to_s_full(var606, 3l, 3l);
 var605 = var607;
 varonce604 = var605;
 }
-((struct instance_standard__NativeArray*)var603)->values[1]=var605;
+((struct instance_core__NativeArray*)var603)->values[1]=var605;
 if (likely(varonce608!=NULL)) {
 var609 = varonce608;
 } else {
 var610 = "type_table->table[";
-var611 = standard___standard__NativeString___to_s_with_length(var610, 18l);
+var611 = core__flat___NativeString___to_s_full(var610, 18l, 18l);
 var609 = var611;
 varonce608 = var609;
 }
-((struct instance_standard__NativeArray*)var603)->values[3]=var609;
+((struct instance_core__NativeArray*)var603)->values[3]=var609;
 if (likely(varonce612!=NULL)) {
 var613 = varonce612;
 } else {
 var614 = "] == ";
-var615 = standard___standard__NativeString___to_s_with_length(var614, 5l);
+var615 = core__flat___NativeString___to_s_full(var614, 5l, 5l);
 var613 = var615;
 varonce612 = var613;
 }
-((struct instance_standard__NativeArray*)var603)->values[5]=var613;
+((struct instance_core__NativeArray*)var603)->values[5]=var613;
 if (likely(varonce616!=NULL)) {
 var617 = varonce616;
 } else {
 var618 = ";";
-var619 = standard___standard__NativeString___to_s_with_length(var618, 1l);
+var619 = core__flat___NativeString___to_s_full(var618, 1l, 1l);
 var617 = var619;
 varonce616 = var617;
 }
-((struct instance_standard__NativeArray*)var603)->values[7]=var617;
+((struct instance_core__NativeArray*)var603)->values[7]=var617;
 } else {
 var603 = varonce602;
 varonce602 = NULL;
 }
 {
-var620 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
+var620 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var603)->values[0]=var620;
-((struct instance_standard__NativeArray*)var603)->values[2]=var_class_ptr;
-((struct instance_standard__NativeArray*)var603)->values[4]=var_cltype;
-((struct instance_standard__NativeArray*)var603)->values[6]=var_idtype;
+((struct instance_core__NativeArray*)var603)->values[0]=var620;
+((struct instance_core__NativeArray*)var603)->values[2]=var_class_ptr;
+((struct instance_core__NativeArray*)var603)->values[4]=var_cltype;
+((struct instance_core__NativeArray*)var603)->values[6]=var_idtype;
 {
-var621 = ((val*(*)(val* self))(var603->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var603); /* native_to_s on <var603:NativeArray[String]>*/
+var621 = ((val*(*)(val* self))(var603->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var603); /* native_to_s on <var603:NativeArray[String]>*/
 }
 varonce602 = var603;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var621); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var621); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (likely(varonce622!=NULL)) {
 var623 = varonce622;
 } else {
 var624 = "}";
-var625 = standard___standard__NativeString___to_s_with_length(var624, 1l);
+var625 = core__flat___NativeString___to_s_full(var624, 1l, 1l);
 var623 = var625;
 varonce622 = var623;
 }
 {
-nit___nit__AbstractCompilerVisitor___add(self, var623); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var623); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (var_maybe_null){
 if (likely(varonce626!=NULL)) {
 var627 = varonce626;
 } else {
 var628 = "}";
-var629 = standard___standard__NativeString___to_s_with_length(var628, 1l);
+var629 = core__flat___NativeString___to_s_full(var628, 1l, 1l);
 var627 = var629;
 varonce626 = var627;
 }
 {
-nit___nit__AbstractCompilerVisitor___add(self, var627); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var627); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 } else {
 }
@@ -2647,7 +2647,7 @@ RET_LABEL:;
 return var;
 }
 /* method separate_erasure_compiler#SeparateErasureCompilerVisitor#unbox_extern for (self: SeparateErasureCompilerVisitor, RuntimeVariable, MType): RuntimeVariable */
-val* nit___nit__SeparateErasureCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__unbox_extern(val* self, val* p0, val* p1) {
+val* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__unbox_extern(val* self, val* p0, val* p1) {
 val* var /* : RuntimeVariable */;
 val* var_value /* var value: RuntimeVariable */;
 val* var_mtype /* var mtype: MType */;
@@ -2675,7 +2675,7 @@ val* var23 /* : String */;
 static val* varonce;
 val* var24 /* : String */;
 char* var25 /* : NativeString */;
-val* var26 /* : FlatString */;
+val* var26 /* : String */;
 short int var27 /* : Bool */;
 val* var_other29 /* var other: nullable Object */;
 short int var30 /* : Bool */;
@@ -2693,19 +2693,19 @@ static val* varonce40;
 static val* varonce42;
 val* var43 /* : String */;
 char* var44 /* : NativeString */;
-val* var45 /* : FlatString */;
+val* var45 /* : String */;
 static val* varonce46;
 val* var47 /* : String */;
 char* var48 /* : NativeString */;
-val* var49 /* : FlatString */;
+val* var49 /* : String */;
 static val* varonce50;
 val* var51 /* : String */;
 char* var52 /* : NativeString */;
-val* var53 /* : FlatString */;
+val* var53 /* : String */;
 static val* varonce54;
 val* var55 /* : String */;
 char* var56 /* : NativeString */;
-val* var57 /* : FlatString */;
+val* var57 /* : String */;
 val* var58 /* : String */;
 val* var59 /* : String */;
 val* var60 /* : String */;
@@ -2716,8 +2716,8 @@ val* var65 /* : String */;
 var_value = p0;
 var_mtype = p1;
 /* <var_mtype:MType> isa MClassType */
-cltype = type_nit__MClassType.color;
-idtype = type_nit__MClassType.id;
+cltype = type_nitc__MClassType.color;
+idtype = type_nitc__MClassType.id;
 if(cltype >= var_mtype->type->table_size) {
 var3 = 0;
 } else {
@@ -2727,10 +2727,10 @@ var_ = var3;
 if (var3){
 {
 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
-var6 = var_mtype->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
+var6 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var4 = var6;
@@ -2739,10 +2739,10 @@ RET_LABEL5:(void)0;
 }
 {
 { /* Inline model#MClass#kind (var4) on <var4:MClass> */
-var9 = var4->attrs[COLOR_nit__model__MClass___kind].val; /* _kind on <var4:MClass> */
+var9 = var4->attrs[COLOR_nitc__model__MClass___kind].val; /* _kind on <var4:MClass> */
 if (unlikely(var9 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 436);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 459);
 fatal_exit(1);
 }
 var7 = var9;
@@ -2751,7 +2751,7 @@ RET_LABEL8:(void)0;
 }
 var10 = glob_sys;
 {
-var11 = nit__model___standard__Sys___extern_kind(var10);
+var11 = nitc__model___core__Sys___extern_kind(var10);
 }
 {
 { /* Inline kernel#Object#== (var7,var11) on <var7:MClassKind> */
@@ -2777,10 +2777,10 @@ var_17 = var2;
 if (var2){
 {
 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
-var20 = var_mtype->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
+var20 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
 if (unlikely(var20 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var18 = var20;
@@ -2789,10 +2789,10 @@ RET_LABEL19:(void)0;
 }
 {
 { /* Inline model#MClass#name (var18) on <var18:MClass> */
-var23 = var18->attrs[COLOR_nit__model__MClass___name].val; /* _name on <var18:MClass> */
+var23 = var18->attrs[COLOR_nitc__model__MClass___name].val; /* _name on <var18:MClass> */
 if (unlikely(var23 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 362);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 385);
 fatal_exit(1);
 }
 var21 = var23;
@@ -2803,7 +2803,7 @@ if (likely(varonce!=NULL)) {
 var24 = varonce;
 } else {
 var25 = "NativeString";
-var26 = standard___standard__NativeString___to_s_with_length(var25, 12l);
+var26 = core__flat___NativeString___to_s_full(var25, 12l, 12l);
 var24 = var26;
 varonce = var24;
 }
@@ -2811,7 +2811,7 @@ varonce = var24;
 { /* Inline kernel#Object#!= (var21,var24) on <var21:String> */
 var_other29 = var24;
 {
-var30 = ((short int(*)(val* self, val* p0))(var21->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var21, var_other29); /* == on <var21:String>*/
+var30 = ((short int(*)(val* self, val* p0))(var21->class->vft[COLOR_core__kernel__Object___61d_61d]))(var21, var_other29); /* == on <var21:String>*/
 }
 var31 = !var30;
 var27 = var31;
@@ -2826,10 +2826,10 @@ var1 = var_17;
 if (var1){
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateErasureCompilerVisitor> */
-var34 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
+var34 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
 if (unlikely(var34 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
 fatal_exit(1);
 }
 var32 = var34;
@@ -2838,10 +2838,10 @@ RET_LABEL33:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var32) on <var32:AbstractCompiler(SeparateCompiler)> */
-var37 = var32->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on <var32:AbstractCompiler(SeparateCompiler)> */
+var37 = var32->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on <var32:AbstractCompiler(SeparateCompiler)> */
 if (unlikely(var37 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 515);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531);
 fatal_exit(1);
 }
 var35 = var37;
@@ -2849,73 +2849,73 @@ RET_LABEL36:(void)0;
 }
 }
 {
-var38 = nit__model___MModule___pointer_type(var35);
+var38 = nitc__model___MModule___pointer_type(var35);
 }
 var_pointer_type = var38;
 {
-var39 = nit___nit__AbstractCompilerVisitor___new_var_extern(self, var_mtype);
+var39 = nitc___nitc__AbstractCompilerVisitor___new_var_extern(self, var_mtype);
 }
 var_res = var39;
 if (unlikely(varonce40==NULL)) {
-var41 = NEW_standard__NativeArray(8l, &type_standard__NativeArray__standard__String);
+var41 = NEW_core__NativeArray(8l, &type_core__NativeArray__core__String);
 if (likely(varonce42!=NULL)) {
 var43 = varonce42;
 } else {
 var44 = " = ((struct instance_";
-var45 = standard___standard__NativeString___to_s_with_length(var44, 21l);
+var45 = core__flat___NativeString___to_s_full(var44, 21l, 21l);
 var43 = var45;
 varonce42 = var43;
 }
-((struct instance_standard__NativeArray*)var41)->values[1]=var43;
+((struct instance_core__NativeArray*)var41)->values[1]=var43;
 if (likely(varonce46!=NULL)) {
 var47 = varonce46;
 } else {
 var48 = "*)";
-var49 = standard___standard__NativeString___to_s_with_length(var48, 2l);
+var49 = core__flat___NativeString___to_s_full(var48, 2l, 2l);
 var47 = var49;
 varonce46 = var47;
 }
-((struct instance_standard__NativeArray*)var41)->values[3]=var47;
+((struct instance_core__NativeArray*)var41)->values[3]=var47;
 if (likely(varonce50!=NULL)) {
 var51 = varonce50;
 } else {
 var52 = ")->value; /* unboxing ";
-var53 = standard___standard__NativeString___to_s_with_length(var52, 22l);
+var53 = core__flat___NativeString___to_s_full(var52, 22l, 22l);
 var51 = var53;
 varonce50 = var51;
 }
-((struct instance_standard__NativeArray*)var41)->values[5]=var51;
+((struct instance_core__NativeArray*)var41)->values[5]=var51;
 if (likely(varonce54!=NULL)) {
 var55 = varonce54;
 } else {
 var56 = " */";
-var57 = standard___standard__NativeString___to_s_with_length(var56, 3l);
+var57 = core__flat___NativeString___to_s_full(var56, 3l, 3l);
 var55 = var57;
 varonce54 = var55;
 }
-((struct instance_standard__NativeArray*)var41)->values[7]=var55;
+((struct instance_core__NativeArray*)var41)->values[7]=var55;
 } else {
 var41 = varonce40;
 varonce40 = NULL;
 }
 {
-var58 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
+var58 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var41)->values[0]=var58;
+((struct instance_core__NativeArray*)var41)->values[0]=var58;
 {
-var59 = ((val*(*)(val* self))(var_pointer_type->class->vft[COLOR_nit__model_base__MEntity__c_name]))(var_pointer_type); /* c_name on <var_pointer_type:MClassType>*/
+var59 = ((val*(*)(val* self))(var_pointer_type->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_pointer_type); /* c_name on <var_pointer_type:MClassType>*/
 }
-((struct instance_standard__NativeArray*)var41)->values[2]=var59;
+((struct instance_core__NativeArray*)var41)->values[2]=var59;
 {
-var60 = ((val*(*)(val* self))(var_value->class->vft[COLOR_standard__string__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
+var60 = ((val*(*)(val* self))(var_value->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var41)->values[4]=var60;
+((struct instance_core__NativeArray*)var41)->values[4]=var60;
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
-var63 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
+var63 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
 if (unlikely(var63 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var61 = var63;
@@ -2923,15 +2923,15 @@ RET_LABEL62:(void)0;
 }
 }
 {
-var64 = ((val*(*)(val* self))(var61->class->vft[COLOR_standard__string__Object__to_s]))(var61); /* to_s on <var61:MType>*/
+var64 = ((val*(*)(val* self))(var61->class->vft[COLOR_core__abstract_text__Object__to_s]))(var61); /* to_s on <var61:MType>*/
 }
-((struct instance_standard__NativeArray*)var41)->values[6]=var64;
+((struct instance_core__NativeArray*)var41)->values[6]=var64;
 {
-var65 = ((val*(*)(val* self))(var41->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var41); /* native_to_s on <var41:NativeArray[String]>*/
+var65 = ((val*(*)(val* self))(var41->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var41); /* native_to_s on <var41:NativeArray[String]>*/
 }
 varonce40 = var41;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var65); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var65); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 var = var_res;
 goto RET_LABEL;
@@ -2943,7 +2943,7 @@ RET_LABEL:;
 return var;
 }
 /* method separate_erasure_compiler#SeparateErasureCompilerVisitor#box_extern for (self: SeparateErasureCompilerVisitor, RuntimeVariable, MType): RuntimeVariable */
-val* nit___nit__SeparateErasureCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__box_extern(val* self, val* p0, val* p1) {
+val* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__box_extern(val* self, val* p0, val* p1) {
 val* var /* : RuntimeVariable */;
 val* var_value /* var value: RuntimeVariable */;
 val* var_mtype /* var mtype: MType */;
@@ -2971,7 +2971,7 @@ val* var23 /* : String */;
 static val* varonce;
 val* var24 /* : String */;
 char* var25 /* : NativeString */;
-val* var26 /* : FlatString */;
+val* var26 /* : String */;
 short int var27 /* : Bool */;
 val* var_other29 /* var other: nullable Object */;
 short int var30 /* : Bool */;
@@ -3013,15 +3013,15 @@ static val* varonce70;
 static val* varonce72;
 val* var73 /* : String */;
 char* var74 /* : NativeString */;
-val* var75 /* : FlatString */;
+val* var75 /* : String */;
 static val* varonce76;
 val* var77 /* : String */;
 char* var78 /* : NativeString */;
-val* var79 /* : FlatString */;
+val* var79 /* : String */;
 static val* varonce80;
 val* var81 /* : String */;
 char* var82 /* : NativeString */;
-val* var83 /* : FlatString */;
+val* var83 /* : String */;
 val* var84 /* : MType */;
 val* var86 /* : MType */;
 val* var87 /* : String */;
@@ -3032,13 +3032,13 @@ val* var92 /* : String */;
 static val* varonce93;
 val* var94 /* : String */;
 char* var95 /* : NativeString */;
-val* var96 /* : FlatString */;
+val* var96 /* : String */;
 val* var98 /* : NativeArray[String] */;
 static val* varonce97;
 static val* varonce99;
 val* var100 /* : String */;
 char* var101 /* : NativeString */;
-val* var102 /* : FlatString */;
+val* var102 /* : String */;
 val* var103 /* : String */;
 val* var104 /* : String */;
 val* var106 /* : NativeArray[String] */;
@@ -3046,19 +3046,19 @@ static val* varonce105;
 static val* varonce107;
 val* var108 /* : String */;
 char* var109 /* : NativeString */;
-val* var110 /* : FlatString */;
+val* var110 /* : String */;
 static val* varonce111;
 val* var112 /* : String */;
 char* var113 /* : NativeString */;
-val* var114 /* : FlatString */;
+val* var114 /* : String */;
 static val* varonce115;
 val* var116 /* : String */;
 char* var117 /* : NativeString */;
-val* var118 /* : FlatString */;
+val* var118 /* : String */;
 static val* varonce119;
 val* var120 /* : String */;
 char* var121 /* : NativeString */;
-val* var122 /* : FlatString */;
+val* var122 /* : String */;
 val* var123 /* : String */;
 val* var124 /* : String */;
 val* var125 /* : String */;
@@ -3071,7 +3071,7 @@ static val* varonce131;
 static val* varonce133;
 val* var134 /* : String */;
 char* var135 /* : NativeString */;
-val* var136 /* : FlatString */;
+val* var136 /* : String */;
 val* var137 /* : String */;
 val* var138 /* : String */;
 val* var140 /* : NativeArray[String] */;
@@ -3079,19 +3079,19 @@ static val* varonce139;
 static val* varonce141;
 val* var142 /* : String */;
 char* var143 /* : NativeString */;
-val* var144 /* : FlatString */;
+val* var144 /* : String */;
 static val* varonce145;
 val* var146 /* : String */;
 char* var147 /* : NativeString */;
-val* var148 /* : FlatString */;
+val* var148 /* : String */;
 val* var149 /* : String */;
 val* var150 /* : String */;
 val* var151 /* : String */;
 var_value = p0;
 var_mtype = p1;
 /* <var_mtype:MType> isa MClassType */
-cltype = type_nit__MClassType.color;
-idtype = type_nit__MClassType.id;
+cltype = type_nitc__MClassType.color;
+idtype = type_nitc__MClassType.id;
 if(cltype >= var_mtype->type->table_size) {
 var3 = 0;
 } else {
@@ -3101,10 +3101,10 @@ var_ = var3;
 if (var3){
 {
 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
-var6 = var_mtype->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
+var6 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var4 = var6;
@@ -3113,10 +3113,10 @@ RET_LABEL5:(void)0;
 }
 {
 { /* Inline model#MClass#kind (var4) on <var4:MClass> */
-var9 = var4->attrs[COLOR_nit__model__MClass___kind].val; /* _kind on <var4:MClass> */
+var9 = var4->attrs[COLOR_nitc__model__MClass___kind].val; /* _kind on <var4:MClass> */
 if (unlikely(var9 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 436);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 459);
 fatal_exit(1);
 }
 var7 = var9;
@@ -3125,7 +3125,7 @@ RET_LABEL8:(void)0;
 }
 var10 = glob_sys;
 {
-var11 = nit__model___standard__Sys___extern_kind(var10);
+var11 = nitc__model___core__Sys___extern_kind(var10);
 }
 {
 { /* Inline kernel#Object#== (var7,var11) on <var7:MClassKind> */
@@ -3151,10 +3151,10 @@ var_17 = var2;
 if (var2){
 {
 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
-var20 = var_mtype->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
+var20 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var_mtype:MType(MClassType)> */
 if (unlikely(var20 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var18 = var20;
@@ -3163,10 +3163,10 @@ RET_LABEL19:(void)0;
 }
 {
 { /* Inline model#MClass#name (var18) on <var18:MClass> */
-var23 = var18->attrs[COLOR_nit__model__MClass___name].val; /* _name on <var18:MClass> */
+var23 = var18->attrs[COLOR_nitc__model__MClass___name].val; /* _name on <var18:MClass> */
 if (unlikely(var23 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 362);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 385);
 fatal_exit(1);
 }
 var21 = var23;
@@ -3177,7 +3177,7 @@ if (likely(varonce!=NULL)) {
 var24 = varonce;
 } else {
 var25 = "NativeString";
-var26 = standard___standard__NativeString___to_s_with_length(var25, 12l);
+var26 = core__flat___NativeString___to_s_full(var25, 12l, 12l);
 var24 = var26;
 varonce = var24;
 }
@@ -3185,7 +3185,7 @@ varonce = var24;
 { /* Inline kernel#Object#!= (var21,var24) on <var21:String> */
 var_other29 = var24;
 {
-var30 = ((short int(*)(val* self, val* p0))(var21->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var21, var_other29); /* == on <var21:String>*/
+var30 = ((short int(*)(val* self, val* p0))(var21->class->vft[COLOR_core__kernel__Object___61d_61d]))(var21, var_other29); /* == on <var21:String>*/
 }
 var31 = !var30;
 var27 = var31;
@@ -3200,10 +3200,10 @@ var1 = var_17;
 if (var1){
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateErasureCompilerVisitor> */
-var34 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
+var34 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
 if (unlikely(var34 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
 fatal_exit(1);
 }
 var32 = var34;
@@ -3212,10 +3212,10 @@ RET_LABEL33:(void)0;
 }
 {
 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var32) on <var32:AbstractCompiler(SeparateCompiler)> */
-var37 = var32->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on <var32:AbstractCompiler(SeparateCompiler)> */
+var37 = var32->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on <var32:AbstractCompiler(SeparateCompiler)> */
 if (unlikely(var37 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 515);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531);
 fatal_exit(1);
 }
 var35 = var37;
@@ -3223,19 +3223,19 @@ RET_LABEL36:(void)0;
 }
 }
 {
-var38 = nit__model___MModule___pointer_type(var35);
+var38 = nitc__model___MModule___pointer_type(var35);
 }
 var_valtype = var38;
 {
-var39 = nit___nit__AbstractCompilerVisitor___new_var(self, var_mtype);
+var39 = nitc___nitc__AbstractCompilerVisitor___new_var(self, var_mtype);
 }
 var_res = var39;
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateErasureCompilerVisitor> */
-var43 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
+var43 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
 if (unlikely(var43 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
 fatal_exit(1);
 }
 var41 = var43;
@@ -3244,7 +3244,7 @@ RET_LABEL42:(void)0;
 }
 {
 { /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (var41) on <var41:AbstractCompiler(SeparateCompiler)> */
-var46 = var41->attrs[COLOR_nit__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on <var41:AbstractCompiler(SeparateCompiler)> */
+var46 = var41->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on <var41:AbstractCompiler(SeparateCompiler)> */
 var44 = var46;
 RET_LABEL45:(void)0;
 }
@@ -3258,7 +3258,7 @@ if (0) {
 { /* Inline kernel#Object#!= (var44,((val*)NULL)) on <var44:nullable RapidTypeAnalysis> */
 var_other29 = ((val*)NULL);
 {
-var50 = ((short int(*)(val* self, val* p0))(var44->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var44, var_other29); /* == on <var44:nullable RapidTypeAnalysis(RapidTypeAnalysis)>*/
+var50 = ((short int(*)(val* self, val* p0))(var44->class->vft[COLOR_core__kernel__Object___61d_61d]))(var44, var_other29); /* == on <var44:nullable RapidTypeAnalysis(RapidTypeAnalysis)>*/
 }
 var51 = !var50;
 var48 = var51;
@@ -3271,10 +3271,10 @@ var_52 = var47;
 if (var47){
 {
 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateErasureCompilerVisitor> */
-var55 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
+var55 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateErasureCompilerVisitor> */
 if (unlikely(var55 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
 fatal_exit(1);
 }
 var53 = var55;
@@ -3283,26 +3283,26 @@ RET_LABEL54:(void)0;
 }
 {
 { /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (var53) on <var53:AbstractCompiler(SeparateCompiler)> */
-var58 = var53->attrs[COLOR_nit__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on <var53:AbstractCompiler(SeparateCompiler)> */
+var58 = var53->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on <var53:AbstractCompiler(SeparateCompiler)> */
 var56 = var58;
 RET_LABEL57:(void)0;
 }
 }
 if (var56 == NULL) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 622);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 622);
 fatal_exit(1);
 } else {
 { /* Inline rapid_type_analysis#RapidTypeAnalysis#live_types (var56) on <var56:nullable RapidTypeAnalysis> */
 if (unlikely(var56 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__rapid_type_analysis, 60);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 60);
 fatal_exit(1);
 }
-var61 = var56->attrs[COLOR_nit__rapid_type_analysis__RapidTypeAnalysis___live_types].val; /* _live_types on <var56:nullable RapidTypeAnalysis> */
+var61 = var56->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_types].val; /* _live_types on <var56:nullable RapidTypeAnalysis> */
 if (unlikely(var61 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_types");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__rapid_type_analysis, 60);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 60);
 fatal_exit(1);
 }
 var59 = var61;
@@ -3311,10 +3311,10 @@ RET_LABEL60:(void)0;
 }
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
-var64 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
+var64 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
 if (unlikely(var64 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var62 = var64;
@@ -3322,8 +3322,8 @@ RET_LABEL63:(void)0;
 }
 }
 /* <var62:MType> isa MClassType */
-cltype66 = type_nit__MClassType.color;
-idtype67 = type_nit__MClassType.id;
+cltype66 = type_nitc__MClassType.color;
+idtype67 = type_nitc__MClassType.id;
 if(cltype66 >= var62->type->table_size) {
 var65 = 0;
 } else {
@@ -3332,11 +3332,11 @@ var65 = var62->type->type_table[cltype66] == idtype67;
 if (unlikely(!var65)) {
 var_class_name = var62 == NULL ? "null" : var62->type->name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 622);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 622);
 fatal_exit(1);
 }
 {
-var68 = standard___standard__HashSet___standard__abstract_collection__Collection__has(var59, var62);
+var68 = core___core__HashSet___core__abstract_collection__Collection__has(var59, var62);
 }
 var69 = !var68;
 var40 = var69;
@@ -3345,44 +3345,44 @@ var40 = var_52;
 }
 if (var40){
 if (unlikely(varonce70==NULL)) {
-var71 = NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String);
+var71 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String);
 if (likely(varonce72!=NULL)) {
 var73 = varonce72;
 } else {
 var74 = "/*no boxing of ";
-var75 = standard___standard__NativeString___to_s_with_length(var74, 15l);
+var75 = core__flat___NativeString___to_s_full(var74, 15l, 15l);
 var73 = var75;
 varonce72 = var73;
 }
-((struct instance_standard__NativeArray*)var71)->values[0]=var73;
+((struct instance_core__NativeArray*)var71)->values[0]=var73;
 if (likely(varonce76!=NULL)) {
 var77 = varonce76;
 } else {
 var78 = ": ";
-var79 = standard___standard__NativeString___to_s_with_length(var78, 2l);
+var79 = core__flat___NativeString___to_s_full(var78, 2l, 2l);
 var77 = var79;
 varonce76 = var77;
 }
-((struct instance_standard__NativeArray*)var71)->values[2]=var77;
+((struct instance_core__NativeArray*)var71)->values[2]=var77;
 if (likely(varonce80!=NULL)) {
 var81 = varonce80;
 } else {
 var82 = " is not live! */";
-var83 = standard___standard__NativeString___to_s_with_length(var82, 16l);
+var83 = core__flat___NativeString___to_s_full(var82, 16l, 16l);
 var81 = var83;
 varonce80 = var81;
 }
-((struct instance_standard__NativeArray*)var71)->values[4]=var81;
+((struct instance_core__NativeArray*)var71)->values[4]=var81;
 } else {
 var71 = varonce70;
 varonce70 = NULL;
 }
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
-var86 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
+var86 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
 if (unlikely(var86 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var84 = var86;
@@ -3390,15 +3390,15 @@ RET_LABEL85:(void)0;
 }
 }
 {
-var87 = ((val*(*)(val* self))(var84->class->vft[COLOR_standard__string__Object__to_s]))(var84); /* to_s on <var84:MType>*/
+var87 = ((val*(*)(val* self))(var84->class->vft[COLOR_core__abstract_text__Object__to_s]))(var84); /* to_s on <var84:MType>*/
 }
-((struct instance_standard__NativeArray*)var71)->values[1]=var87;
+((struct instance_core__NativeArray*)var71)->values[1]=var87;
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
-var90 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
+var90 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
 if (unlikely(var90 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var88 = var90;
@@ -3406,117 +3406,117 @@ RET_LABEL89:(void)0;
 }
 }
 {
-var91 = ((val*(*)(val* self))(var88->class->vft[COLOR_standard__string__Object__to_s]))(var88); /* to_s on <var88:MType>*/
+var91 = ((val*(*)(val* self))(var88->class->vft[COLOR_core__abstract_text__Object__to_s]))(var88); /* to_s on <var88:MType>*/
 }
-((struct instance_standard__NativeArray*)var71)->values[3]=var91;
+((struct instance_core__NativeArray*)var71)->values[3]=var91;
 {
-var92 = ((val*(*)(val* self))(var71->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var71); /* native_to_s on <var71:NativeArray[String]>*/
+var92 = ((val*(*)(val* self))(var71->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var71); /* native_to_s on <var71:NativeArray[String]>*/
 }
 varonce70 = var71;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var92); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var92); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (likely(varonce93!=NULL)) {
 var94 = varonce93;
 } else {
 var95 = "PRINT_ERROR(\"Dead code executed!\\n\"); fatal_exit(1);";
-var96 = standard___standard__NativeString___to_s_with_length(var95, 52l);
+var96 = core__flat___NativeString___to_s_full(var95, 52l, 52l);
 var94 = var96;
 varonce93 = var94;
 }
 {
-nit___nit__AbstractCompilerVisitor___add(self, var94); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var94); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 var = var_res;
 goto RET_LABEL;
 } else {
 }
 if (unlikely(varonce97==NULL)) {
-var98 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var98 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce99!=NULL)) {
 var100 = varonce99;
 } else {
 var101 = "BOX_";
-var102 = standard___standard__NativeString___to_s_with_length(var101, 4l);
+var102 = core__flat___NativeString___to_s_full(var101, 4l, 4l);
 var100 = var102;
 varonce99 = var100;
 }
-((struct instance_standard__NativeArray*)var98)->values[0]=var100;
+((struct instance_core__NativeArray*)var98)->values[0]=var100;
 } else {
 var98 = varonce97;
 varonce97 = NULL;
 }
 {
-var103 = ((val*(*)(val* self))(var_valtype->class->vft[COLOR_nit__model_base__MEntity__c_name]))(var_valtype); /* c_name on <var_valtype:MClassType>*/
+var103 = ((val*(*)(val* self))(var_valtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_valtype); /* c_name on <var_valtype:MClassType>*/
 }
-((struct instance_standard__NativeArray*)var98)->values[1]=var103;
+((struct instance_core__NativeArray*)var98)->values[1]=var103;
 {
-var104 = ((val*(*)(val* self))(var98->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var98); /* native_to_s on <var98:NativeArray[String]>*/
+var104 = ((val*(*)(val* self))(var98->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var98); /* native_to_s on <var98:NativeArray[String]>*/
 }
 varonce97 = var98;
 {
-nit___nit__AbstractCompilerVisitor___require_declaration(self, var104); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___require_declaration(self, var104); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce105==NULL)) {
-var106 = NEW_standard__NativeArray(8l, &type_standard__NativeArray__standard__String);
+var106 = NEW_core__NativeArray(8l, &type_core__NativeArray__core__String);
 if (likely(varonce107!=NULL)) {
 var108 = varonce107;
 } else {
 var109 = " = BOX_";
-var110 = standard___standard__NativeString___to_s_with_length(var109, 7l);
+var110 = core__flat___NativeString___to_s_full(var109, 7l, 7l);
 var108 = var110;
 varonce107 = var108;
 }
-((struct instance_standard__NativeArray*)var106)->values[1]=var108;
+((struct instance_core__NativeArray*)var106)->values[1]=var108;
 if (likely(varonce111!=NULL)) {
 var112 = varonce111;
 } else {
 var113 = "(";
-var114 = standard___standard__NativeString___to_s_with_length(var113, 1l);
+var114 = core__flat___NativeString___to_s_full(var113, 1l, 1l);
 var112 = var114;
 varonce111 = var112;
 }
-((struct instance_standard__NativeArray*)var106)->values[3]=var112;
+((struct instance_core__NativeArray*)var106)->values[3]=var112;
 if (likely(varonce115!=NULL)) {
 var116 = varonce115;
 } else {
 var117 = "); /* boxing ";
-var118 = standard___standard__NativeString___to_s_with_length(var117, 13l);
+var118 = core__flat___NativeString___to_s_full(var117, 13l, 13l);
 var116 = var118;
 varonce115 = var116;
 }
-((struct instance_standard__NativeArray*)var106)->values[5]=var116;
+((struct instance_core__NativeArray*)var106)->values[5]=var116;
 if (likely(varonce119!=NULL)) {
 var120 = varonce119;
 } else {
 var121 = " */";
-var122 = standard___standard__NativeString___to_s_with_length(var121, 3l);
+var122 = core__flat___NativeString___to_s_full(var121, 3l, 3l);
 var120 = var122;
 varonce119 = var120;
 }
-((struct instance_standard__NativeArray*)var106)->values[7]=var120;
+((struct instance_core__NativeArray*)var106)->values[7]=var120;
 } else {
 var106 = varonce105;
 varonce105 = NULL;
 }
 {
-var123 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
+var123 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var106)->values[0]=var123;
+((struct instance_core__NativeArray*)var106)->values[0]=var123;
 {
-var124 = ((val*(*)(val* self))(var_valtype->class->vft[COLOR_nit__model_base__MEntity__c_name]))(var_valtype); /* c_name on <var_valtype:MClassType>*/
+var124 = ((val*(*)(val* self))(var_valtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_valtype); /* c_name on <var_valtype:MClassType>*/
 }
-((struct instance_standard__NativeArray*)var106)->values[2]=var124;
+((struct instance_core__NativeArray*)var106)->values[2]=var124;
 {
-var125 = ((val*(*)(val* self))(var_value->class->vft[COLOR_standard__string__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
+var125 = ((val*(*)(val* self))(var_value->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var106)->values[4]=var125;
+((struct instance_core__NativeArray*)var106)->values[4]=var125;
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
-var128 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
+var128 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
 if (unlikely(var128 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var126 = var128;
@@ -3524,80 +3524,80 @@ RET_LABEL127:(void)0;
 }
 }
 {
-var129 = ((val*(*)(val* self))(var126->class->vft[COLOR_standard__string__Object__to_s]))(var126); /* to_s on <var126:MType>*/
+var129 = ((val*(*)(val* self))(var126->class->vft[COLOR_core__abstract_text__Object__to_s]))(var126); /* to_s on <var126:MType>*/
 }
-((struct instance_standard__NativeArray*)var106)->values[6]=var129;
+((struct instance_core__NativeArray*)var106)->values[6]=var129;
 {
-var130 = ((val*(*)(val* self))(var106->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var106); /* native_to_s on <var106:NativeArray[String]>*/
+var130 = ((val*(*)(val* self))(var106->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var106); /* native_to_s on <var106:NativeArray[String]>*/
 }
 varonce105 = var106;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var130); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var130); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce131==NULL)) {
-var132 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var132 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce133!=NULL)) {
 var134 = varonce133;
 } else {
 var135 = "class_";
-var136 = standard___standard__NativeString___to_s_with_length(var135, 6l);
+var136 = core__flat___NativeString___to_s_full(var135, 6l, 6l);
 var134 = var136;
 varonce133 = var134;
 }
-((struct instance_standard__NativeArray*)var132)->values[0]=var134;
+((struct instance_core__NativeArray*)var132)->values[0]=var134;
 } else {
 var132 = varonce131;
 varonce131 = NULL;
 }
 {
-var137 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nit__model_base__MEntity__c_name]))(var_mtype); /* c_name on <var_mtype:MType(MClassType)>*/
+var137 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_mtype); /* c_name on <var_mtype:MType(MClassType)>*/
 }
-((struct instance_standard__NativeArray*)var132)->values[1]=var137;
+((struct instance_core__NativeArray*)var132)->values[1]=var137;
 {
-var138 = ((val*(*)(val* self))(var132->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var132); /* native_to_s on <var132:NativeArray[String]>*/
+var138 = ((val*(*)(val* self))(var132->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var132); /* native_to_s on <var132:NativeArray[String]>*/
 }
 varonce131 = var132;
 {
-nit___nit__AbstractCompilerVisitor___require_declaration(self, var138); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___require_declaration(self, var138); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce139==NULL)) {
-var140 = NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String);
+var140 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String);
 if (likely(varonce141!=NULL)) {
 var142 = varonce141;
 } else {
 var143 = "->class = &class_";
-var144 = standard___standard__NativeString___to_s_with_length(var143, 17l);
+var144 = core__flat___NativeString___to_s_full(var143, 17l, 17l);
 var142 = var144;
 varonce141 = var142;
 }
-((struct instance_standard__NativeArray*)var140)->values[1]=var142;
+((struct instance_core__NativeArray*)var140)->values[1]=var142;
 if (likely(varonce145!=NULL)) {
 var146 = varonce145;
 } else {
 var147 = ";";
-var148 = standard___standard__NativeString___to_s_with_length(var147, 1l);
+var148 = core__flat___NativeString___to_s_full(var147, 1l, 1l);
 var146 = var148;
 varonce145 = var146;
 }
-((struct instance_standard__NativeArray*)var140)->values[3]=var146;
+((struct instance_core__NativeArray*)var140)->values[3]=var146;
 } else {
 var140 = varonce139;
 varonce139 = NULL;
 }
 {
-var149 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
+var149 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var140)->values[0]=var149;
+((struct instance_core__NativeArray*)var140)->values[0]=var149;
 {
-var150 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nit__model_base__MEntity__c_name]))(var_mtype); /* c_name on <var_mtype:MType(MClassType)>*/
+var150 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_mtype); /* c_name on <var_mtype:MType(MClassType)>*/
 }
-((struct instance_standard__NativeArray*)var140)->values[2]=var150;
+((struct instance_core__NativeArray*)var140)->values[2]=var150;
 {
-var151 = ((val*(*)(val* self))(var140->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var140); /* native_to_s on <var140:NativeArray[String]>*/
+var151 = ((val*(*)(val* self))(var140->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var140); /* native_to_s on <var140:NativeArray[String]>*/
 }
 varonce139 = var140;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var151); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var151); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 var = var_res;
 goto RET_LABEL;
@@ -3609,13 +3609,13 @@ RET_LABEL:;
 return var;
 }
 /* method separate_erasure_compiler#SeparateErasureCompilerVisitor#class_name_string for (self: SeparateErasureCompilerVisitor, RuntimeVariable): String */
-val* nit___nit__SeparateErasureCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__class_name_string(val* self, val* p0) {
+val* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__class_name_string(val* self, val* p0) {
 val* var /* : String */;
 val* var_value /* var value: RuntimeVariable */;
 static val* varonce;
 val* var1 /* : String */;
 char* var2 /* : NativeString */;
-val* var3 /* : FlatString */;
+val* var3 /* : String */;
 val* var4 /* : String */;
 val* var_res /* var res: String */;
 val* var6 /* : NativeArray[String] */;
@@ -3623,11 +3623,11 @@ static val* varonce5;
 static val* varonce7;
 val* var8 /* : String */;
 char* var9 /* : NativeString */;
-val* var10 /* : FlatString */;
+val* var10 /* : String */;
 static val* varonce11;
 val* var12 /* : String */;
 char* var13 /* : NativeString */;
-val* var14 /* : FlatString */;
+val* var14 /* : String */;
 val* var15 /* : String */;
 val* var16 /* : MType */;
 val* var18 /* : MType */;
@@ -3638,15 +3638,15 @@ static val* varonce21;
 static val* varonce23;
 val* var24 /* : String */;
 char* var25 /* : NativeString */;
-val* var26 /* : FlatString */;
+val* var26 /* : String */;
 static val* varonce27;
 val* var28 /* : String */;
 char* var29 /* : NativeString */;
-val* var30 /* : FlatString */;
+val* var30 /* : String */;
 static val* varonce31;
 val* var32 /* : String */;
 char* var33 /* : NativeString */;
-val* var34 /* : FlatString */;
+val* var34 /* : String */;
 val* var35 /* : String */;
 val* var36 /* : String */;
 val* var37 /* : String */;
@@ -3655,7 +3655,7 @@ static val* varonce38;
 static val* varonce40;
 val* var41 /* : String */;
 char* var42 /* : NativeString */;
-val* var43 /* : FlatString */;
+val* var43 /* : String */;
 val* var44 /* : MType */;
 val* var46 /* : MType */;
 val* var47 /* : String */;
@@ -3665,11 +3665,11 @@ static val* varonce49;
 static val* varonce51;
 val* var52 /* : String */;
 char* var53 /* : NativeString */;
-val* var54 /* : FlatString */;
+val* var54 /* : String */;
 static val* varonce55;
 val* var56 /* : String */;
 char* var57 /* : NativeString */;
-val* var58 /* : FlatString */;
+val* var58 /* : String */;
 val* var59 /* : MType */;
 val* var61 /* : MType */;
 val* var62 /* : String */;
@@ -3679,52 +3679,52 @@ if (likely(varonce!=NULL)) {
 var1 = varonce;
 } else {
 var2 = "var_class_name";
-var3 = standard___standard__NativeString___to_s_with_length(var2, 14l);
+var3 = core__flat___NativeString___to_s_full(var2, 14l, 14l);
 var1 = var3;
 varonce = var1;
 }
 {
-var4 = nit___nit__AbstractCompilerVisitor___get_name(self, var1);
+var4 = nitc___nitc__AbstractCompilerVisitor___get_name(self, var1);
 }
 var_res = var4;
 if (unlikely(varonce5==NULL)) {
-var6 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
+var6 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String);
 if (likely(varonce7!=NULL)) {
 var8 = varonce7;
 } else {
 var9 = "const char* ";
-var10 = standard___standard__NativeString___to_s_with_length(var9, 12l);
+var10 = core__flat___NativeString___to_s_full(var9, 12l, 12l);
 var8 = var10;
 varonce7 = var8;
 }
-((struct instance_standard__NativeArray*)var6)->values[0]=var8;
+((struct instance_core__NativeArray*)var6)->values[0]=var8;
 if (likely(varonce11!=NULL)) {
 var12 = varonce11;
 } else {
 var13 = ";";
-var14 = standard___standard__NativeString___to_s_with_length(var13, 1l);
+var14 = core__flat___NativeString___to_s_full(var13, 1l, 1l);
 var12 = var14;
 varonce11 = var12;
 }
-((struct instance_standard__NativeArray*)var6)->values[2]=var12;
+((struct instance_core__NativeArray*)var6)->values[2]=var12;
 } else {
 var6 = varonce5;
 varonce5 = NULL;
 }
-((struct instance_standard__NativeArray*)var6)->values[1]=var_res;
+((struct instance_core__NativeArray*)var6)->values[1]=var_res;
 {
-var15 = ((val*(*)(val* self))(var6->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var6); /* native_to_s on <var6:NativeArray[String]>*/
+var15 = ((val*(*)(val* self))(var6->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var6); /* native_to_s on <var6:NativeArray[String]>*/
 }
 varonce5 = var6;
 {
-nit___nit__AbstractCompilerVisitor___add_decl(self, var15); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add_decl(self, var15); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateErasureCompilerVisitor>*/
 }
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
-var18 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
+var18 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
 if (unlikely(var18 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var16 = var18;
@@ -3732,81 +3732,81 @@ RET_LABEL17:(void)0;
 }
 }
 {
-var19 = ((short int(*)(val* self))(var16->class->vft[COLOR_nit__abstract_compiler__MType__is_c_primitive]))(var16); /* is_c_primitive on <var16:MType>*/
+var19 = ((short int(*)(val* self))(var16->class->vft[COLOR_nitc__abstract_compiler__MType__is_c_primitive]))(var16); /* is_c_primitive on <var16:MType>*/
 }
 var20 = !var19;
 if (var20){
 if (unlikely(varonce21==NULL)) {
-var22 = NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String);
+var22 = NEW_core__NativeArray(6l, &type_core__NativeArray__core__String);
 if (likely(varonce23!=NULL)) {
 var24 = varonce23;
 } else {
 var25 = " = ";
-var26 = standard___standard__NativeString___to_s_with_length(var25, 3l);
+var26 = core__flat___NativeString___to_s_full(var25, 3l, 3l);
 var24 = var26;
 varonce23 = var24;
 }
-((struct instance_standard__NativeArray*)var22)->values[1]=var24;
+((struct instance_core__NativeArray*)var22)->values[1]=var24;
 if (likely(varonce27!=NULL)) {
 var28 = varonce27;
 } else {
 var29 = " == NULL ? \"null\" : ";
-var30 = standard___standard__NativeString___to_s_with_length(var29, 20l);
+var30 = core__flat___NativeString___to_s_full(var29, 20l, 20l);
 var28 = var30;
 varonce27 = var28;
 }
-((struct instance_standard__NativeArray*)var22)->values[3]=var28;
+((struct instance_core__NativeArray*)var22)->values[3]=var28;
 if (likely(varonce31!=NULL)) {
 var32 = varonce31;
 } else {
 var33 = "->class->name;";
-var34 = standard___standard__NativeString___to_s_with_length(var33, 14l);
+var34 = core__flat___NativeString___to_s_full(var33, 14l, 14l);
 var32 = var34;
 varonce31 = var32;
 }
-((struct instance_standard__NativeArray*)var22)->values[5]=var32;
+((struct instance_core__NativeArray*)var22)->values[5]=var32;
 } else {
 var22 = varonce21;
 varonce21 = NULL;
 }
-((struct instance_standard__NativeArray*)var22)->values[0]=var_res;
+((struct instance_core__NativeArray*)var22)->values[0]=var_res;
 {
-var35 = ((val*(*)(val* self))(var_value->class->vft[COLOR_standard__string__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
+var35 = ((val*(*)(val* self))(var_value->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var22)->values[2]=var35;
+((struct instance_core__NativeArray*)var22)->values[2]=var35;
 {
-var36 = ((val*(*)(val* self))(var_value->class->vft[COLOR_standard__string__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
+var36 = ((val*(*)(val* self))(var_value->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_value); /* to_s on <var_value:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var22)->values[4]=var36;
+((struct instance_core__NativeArray*)var22)->values[4]=var36;
 {
-var37 = ((val*(*)(val* self))(var22->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var22); /* native_to_s on <var22:NativeArray[String]>*/
+var37 = ((val*(*)(val* self))(var22->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var22); /* native_to_s on <var22:NativeArray[String]>*/
 }
 varonce21 = var22;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var37); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var37); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 } else {
 if (unlikely(varonce38==NULL)) {
-var39 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var39 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce40!=NULL)) {
 var41 = varonce40;
 } else {
 var42 = "class_";
-var43 = standard___standard__NativeString___to_s_with_length(var42, 6l);
+var43 = core__flat___NativeString___to_s_full(var42, 6l, 6l);
 var41 = var43;
 varonce40 = var41;
 }
-((struct instance_standard__NativeArray*)var39)->values[0]=var41;
+((struct instance_core__NativeArray*)var39)->values[0]=var41;
 } else {
 var39 = varonce38;
 varonce38 = NULL;
 }
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
-var46 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
+var46 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
 if (unlikely(var46 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var44 = var46;
@@ -3814,47 +3814,47 @@ RET_LABEL45:(void)0;
 }
 }
 {
-var47 = ((val*(*)(val* self))(var44->class->vft[COLOR_nit__model_base__MEntity__c_name]))(var44); /* c_name on <var44:MType>*/
+var47 = ((val*(*)(val* self))(var44->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var44); /* c_name on <var44:MType>*/
 }
-((struct instance_standard__NativeArray*)var39)->values[1]=var47;
+((struct instance_core__NativeArray*)var39)->values[1]=var47;
 {
-var48 = ((val*(*)(val* self))(var39->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var39); /* native_to_s on <var39:NativeArray[String]>*/
+var48 = ((val*(*)(val* self))(var39->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var39); /* native_to_s on <var39:NativeArray[String]>*/
 }
 varonce38 = var39;
 {
-nit___nit__AbstractCompilerVisitor___require_declaration(self, var48); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___require_declaration(self, var48); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce49==NULL)) {
-var50 = NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String);
+var50 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String);
 if (likely(varonce51!=NULL)) {
 var52 = varonce51;
 } else {
 var53 = " = class_";
-var54 = standard___standard__NativeString___to_s_with_length(var53, 9l);
+var54 = core__flat___NativeString___to_s_full(var53, 9l, 9l);
 var52 = var54;
 varonce51 = var52;
 }
-((struct instance_standard__NativeArray*)var50)->values[1]=var52;
+((struct instance_core__NativeArray*)var50)->values[1]=var52;
 if (likely(varonce55!=NULL)) {
 var56 = varonce55;
 } else {
 var57 = ".name;";
-var58 = standard___standard__NativeString___to_s_with_length(var57, 6l);
+var58 = core__flat___NativeString___to_s_full(var57, 6l, 6l);
 var56 = var58;
 varonce55 = var56;
 }
-((struct instance_standard__NativeArray*)var50)->values[3]=var56;
+((struct instance_core__NativeArray*)var50)->values[3]=var56;
 } else {
 var50 = varonce49;
 varonce49 = NULL;
 }
-((struct instance_standard__NativeArray*)var50)->values[0]=var_res;
+((struct instance_core__NativeArray*)var50)->values[0]=var_res;
 {
 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
-var61 = var_value->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
+var61 = var_value->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_value:RuntimeVariable> */
 if (unlikely(var61 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1870);
 fatal_exit(1);
 }
 var59 = var61;
@@ -3862,15 +3862,15 @@ RET_LABEL60:(void)0;
 }
 }
 {
-var62 = ((val*(*)(val* self))(var59->class->vft[COLOR_nit__model_base__MEntity__c_name]))(var59); /* c_name on <var59:MType>*/
+var62 = ((val*(*)(val* self))(var59->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var59); /* c_name on <var59:MType>*/
 }
-((struct instance_standard__NativeArray*)var50)->values[2]=var62;
+((struct instance_core__NativeArray*)var50)->values[2]=var62;
 {
-var63 = ((val*(*)(val* self))(var50->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var50); /* native_to_s on <var50:NativeArray[String]>*/
+var63 = ((val*(*)(val* self))(var50->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var50); /* native_to_s on <var50:NativeArray[String]>*/
 }
 varonce49 = var50;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var63); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var63); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 }
 var = var_res;
@@ -3879,7 +3879,7 @@ RET_LABEL:;
 return var;
 }
 /* method separate_erasure_compiler#SeparateErasureCompilerVisitor#native_array_instance for (self: SeparateErasureCompilerVisitor, MType, RuntimeVariable): RuntimeVariable */
-val* nit___nit__SeparateErasureCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__native_array_instance(val* self, val* p0, val* p1) {
+val* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__native_array_instance(val* self, val* p0, val* p1) {
 val* var /* : RuntimeVariable */;
 val* var_elttype /* var elttype: MType */;
 val* var_length /* var length: RuntimeVariable */;
@@ -3897,7 +3897,7 @@ static val* varonce;
 static val* varonce8;
 val* var9 /* : String */;
 char* var10 /* : NativeString */;
-val* var11 /* : FlatString */;
+val* var11 /* : String */;
 val* var12 /* : String */;
 val* var13 /* : String */;
 val* var15 /* : NativeArray[String] */;
@@ -3905,15 +3905,15 @@ static val* varonce14;
 static val* varonce16;
 val* var17 /* : String */;
 char* var18 /* : NativeString */;
-val* var19 /* : FlatString */;
+val* var19 /* : String */;
 static val* varonce20;
 val* var21 /* : String */;
 char* var22 /* : NativeString */;
-val* var23 /* : FlatString */;
+val* var23 /* : String */;
 static val* varonce24;
 val* var25 /* : String */;
 char* var26 /* : NativeString */;
-val* var27 /* : FlatString */;
+val* var27 /* : String */;
 val* var28 /* : String */;
 val* var29 /* : String */;
 val* var30 /* : String */;
@@ -3921,111 +3921,111 @@ val* var31 /* : String */;
 var_elttype = p0;
 var_length = p1;
 {
-var1 = nit___nit__AbstractCompilerVisitor___mmodule(self);
+var1 = nitc___nitc__AbstractCompilerVisitor___mmodule(self);
 }
 {
-var2 = nit__model___MModule___native_array_class(var1);
+var2 = nitc__model___MModule___native_array_class(var1);
 }
 var_nclass = var2;
-var3 = NEW_standard__Array(&type_standard__Array__nit__MType);
+var3 = NEW_core__Array(&type_core__Array__nitc__MType);
 {
-standard___standard__Array___with_capacity(var3, 1l); /* Direct call array#Array#with_capacity on <var3:Array[MType]>*/
+core___core__Array___with_capacity(var3, 1l); /* Direct call array#Array#with_capacity on <var3:Array[MType]>*/
 }
 var_ = var3;
 {
-standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(var_, var_elttype); /* Direct call array#AbstractArray#push on <var_:Array[MType]>*/
+core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var_elttype); /* Direct call array#AbstractArray#push on <var_:Array[MType]>*/
 }
 {
-var4 = nit___nit__MClass___get_mtype(var_nclass, var_);
+var4 = nitc___nitc__MClass___get_mtype(var_nclass, var_);
 }
 var_mtype = var4;
 {
-var5 = nit___nit__AbstractCompilerVisitor___new_var(self, var_mtype);
+var5 = nitc___nitc__AbstractCompilerVisitor___new_var(self, var_mtype);
 }
 var_res = var5;
 {
 { /* Inline abstract_compiler#RuntimeVariable#is_exact= (var_res,1) on <var_res:RuntimeVariable> */
-var_res->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___is_exact].s = 1; /* _is_exact on <var_res:RuntimeVariable> */
+var_res->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___is_exact].s = 1; /* _is_exact on <var_res:RuntimeVariable> */
 RET_LABEL6:(void)0;
 }
 }
 if (unlikely(varonce==NULL)) {
-var7 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var7 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce8!=NULL)) {
 var9 = varonce8;
 } else {
 var10 = "NEW_";
-var11 = standard___standard__NativeString___to_s_with_length(var10, 4l);
+var11 = core__flat___NativeString___to_s_full(var10, 4l, 4l);
 var9 = var11;
 varonce8 = var9;
 }
-((struct instance_standard__NativeArray*)var7)->values[0]=var9;
+((struct instance_core__NativeArray*)var7)->values[0]=var9;
 } else {
 var7 = varonce;
 varonce = NULL;
 }
 {
-var12 = nit___nit__MClass___nit__model_base__MEntity__c_name(var_nclass);
+var12 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_nclass);
 }
-((struct instance_standard__NativeArray*)var7)->values[1]=var12;
+((struct instance_core__NativeArray*)var7)->values[1]=var12;
 {
-var13 = ((val*(*)(val* self))(var7->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var7); /* native_to_s on <var7:NativeArray[String]>*/
+var13 = ((val*(*)(val* self))(var7->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var7); /* native_to_s on <var7:NativeArray[String]>*/
 }
 varonce = var7;
 {
-nit___nit__AbstractCompilerVisitor___require_declaration(self, var13); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___require_declaration(self, var13); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce14==NULL)) {
-var15 = NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String);
+var15 = NEW_core__NativeArray(6l, &type_core__NativeArray__core__String);
 if (likely(varonce16!=NULL)) {
 var17 = varonce16;
 } else {
 var18 = " = NEW_";
-var19 = standard___standard__NativeString___to_s_with_length(var18, 7l);
+var19 = core__flat___NativeString___to_s_full(var18, 7l, 7l);
 var17 = var19;
 varonce16 = var17;
 }
-((struct instance_standard__NativeArray*)var15)->values[1]=var17;
+((struct instance_core__NativeArray*)var15)->values[1]=var17;
 if (likely(varonce20!=NULL)) {
 var21 = varonce20;
 } else {
 var22 = "(";
-var23 = standard___standard__NativeString___to_s_with_length(var22, 1l);
+var23 = core__flat___NativeString___to_s_full(var22, 1l, 1l);
 var21 = var23;
 varonce20 = var21;
 }
-((struct instance_standard__NativeArray*)var15)->values[3]=var21;
+((struct instance_core__NativeArray*)var15)->values[3]=var21;
 if (likely(varonce24!=NULL)) {
 var25 = varonce24;
 } else {
 var26 = ");";
-var27 = standard___standard__NativeString___to_s_with_length(var26, 2l);
+var27 = core__flat___NativeString___to_s_full(var26, 2l, 2l);
 var25 = var27;
 varonce24 = var25;
 }
-((struct instance_standard__NativeArray*)var15)->values[5]=var25;
+((struct instance_core__NativeArray*)var15)->values[5]=var25;
 } else {
 var15 = varonce14;
 varonce14 = NULL;
 }
 {
-var28 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
+var28 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var15)->values[0]=var28;
+((struct instance_core__NativeArray*)var15)->values[0]=var28;
 {
-var29 = nit___nit__MClass___nit__model_base__MEntity__c_name(var_nclass);
+var29 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_nclass);
 }
-((struct instance_standard__NativeArray*)var15)->values[2]=var29;
+((struct instance_core__NativeArray*)var15)->values[2]=var29;
 {
-var30 = ((val*(*)(val* self))(var_length->class->vft[COLOR_standard__string__Object__to_s]))(var_length); /* to_s on <var_length:RuntimeVariable>*/
+var30 = ((val*(*)(val* self))(var_length->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_length); /* to_s on <var_length:RuntimeVariable>*/
 }
-((struct instance_standard__NativeArray*)var15)->values[4]=var30;
+((struct instance_core__NativeArray*)var15)->values[4]=var30;
 {
-var31 = ((val*(*)(val* self))(var15->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var15); /* native_to_s on <var15:NativeArray[String]>*/
+var31 = ((val*(*)(val* self))(var15->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var15); /* native_to_s on <var15:NativeArray[String]>*/
 }
 varonce14 = var15;
 {
-nit___nit__AbstractCompilerVisitor___add(self, var31); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___add(self, var31); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateErasureCompilerVisitor>*/
 }
 var = var_res;
 goto RET_LABEL;
@@ -4033,7 +4033,7 @@ RET_LABEL:;
 return var;
 }
 /* method separate_erasure_compiler#SeparateErasureCompilerVisitor#calloc_array for (self: SeparateErasureCompilerVisitor, MType, Array[RuntimeVariable]) */
-void nit___nit__SeparateErasureCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__calloc_array(val* self, val* p0, val* p1) {
+void nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__calloc_array(val* self, val* p0, val* p1) {
 val* var_ret_type /* var ret_type: MType */;
 val* var_arguments /* var arguments: Array[RuntimeVariable] */;
 short int var /* : Bool */;
@@ -4046,7 +4046,7 @@ static val* varonce;
 static val* varonce2;
 val* var3 /* : String */;
 char* var4 /* : NativeString */;
-val* var5 /* : FlatString */;
+val* var5 /* : String */;
 val* var6 /* : MClass */;
 val* var8 /* : MClass */;
 val* var9 /* : String */;
@@ -4056,15 +4056,15 @@ static val* varonce11;
 static val* varonce13;
 val* var14 /* : String */;
 char* var15 /* : NativeString */;
-val* var16 /* : FlatString */;
+val* var16 /* : String */;
 static val* varonce17;
 val* var18 /* : String */;
 char* var19 /* : NativeString */;
-val* var20 /* : FlatString */;
+val* var20 /* : String */;
 static val* varonce21;
 val* var22 /* : String */;
 char* var23 /* : NativeString */;
-val* var24 /* : FlatString */;
+val* var24 /* : String */;
 val* var25 /* : MClass */;
 val* var27 /* : MClass */;
 val* var28 /* : String */;
@@ -4075,8 +4075,8 @@ val* var32 /* : RuntimeVariable */;
 var_ret_type = p0;
 var_arguments = p1;
 /* <var_ret_type:MType> isa MClassType */
-cltype = type_nit__MClassType.color;
-idtype = type_nit__MClassType.id;
+cltype = type_nitc__MClassType.color;
+idtype = type_nitc__MClassType.id;
 if(cltype >= var_ret_type->type->table_size) {
 var = 0;
 } else {
@@ -4085,31 +4085,31 @@ var = var_ret_type->type->type_table[cltype] == idtype;
 if (unlikely(!var)) {
 var_class_name = var_ret_type == NULL ? "null" : var_ret_type->type->name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_erasure_compiler, 663);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 663);
 fatal_exit(1);
 }
 var_ret = var_ret_type;
 if (unlikely(varonce==NULL)) {
-var1 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+var1 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
 if (likely(varonce2!=NULL)) {
 var3 = varonce2;
 } else {
 var4 = "NEW_";
-var5 = standard___standard__NativeString___to_s_with_length(var4, 4l);
+var5 = core__flat___NativeString___to_s_full(var4, 4l, 4l);
 var3 = var5;
 varonce2 = var3;
 }
-((struct instance_standard__NativeArray*)var1)->values[0]=var3;
+((struct instance_core__NativeArray*)var1)->values[0]=var3;
 } else {
 var1 = varonce;
 varonce = NULL;
 }
 {
 { /* Inline model#MClassType#mclass (var_ret) on <var_ret:MClassType> */
-var8 = var_ret->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var_ret:MClassType> */
+var8 = var_ret->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var_ret:MClassType> */
 if (unlikely(var8 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var6 = var8;
@@ -4117,55 +4117,55 @@ RET_LABEL7:(void)0;
 }
 }
 {
-var9 = nit___nit__MClass___nit__model_base__MEntity__c_name(var6);
+var9 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var6);
 }
-((struct instance_standard__NativeArray*)var1)->values[1]=var9;
+((struct instance_core__NativeArray*)var1)->values[1]=var9;
 {
-var10 = ((val*(*)(val* self))(var1->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1); /* native_to_s on <var1:NativeArray[String]>*/
+var10 = ((val*(*)(val* self))(var1->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1); /* native_to_s on <var1:NativeArray[String]>*/
 }
 varonce = var1;
 {
-nit___nit__AbstractCompilerVisitor___require_declaration(self, var10); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___require_declaration(self, var10); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateErasureCompilerVisitor>*/
 }
 if (unlikely(varonce11==NULL)) {
-var12 = NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String);
+var12 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String);
 if (likely(varonce13!=NULL)) {
 var14 = varonce13;
 } else {
 var15 = "NEW_";
-var16 = standard___standard__NativeString___to_s_with_length(var15, 4l);
+var16 = core__flat___NativeString___to_s_full(var15, 4l, 4l);
 var14 = var16;
 varonce13 = var14;
 }
-((struct instance_standard__NativeArray*)var12)->values[0]=var14;
+((struct instance_core__NativeArray*)var12)->values[0]=var14;
 if (likely(varonce17!=NULL)) {
 var18 = varonce17;
 } else {
 var19 = "(";
-var20 = standard___standard__NativeString___to_s_with_length(var19, 1l);
+var20 = core__flat___NativeString___to_s_full(var19, 1l, 1l);
 var18 = var20;
 varonce17 = var18;
 }
-((struct instance_standard__NativeArray*)var12)->values[2]=var18;
+((struct instance_core__NativeArray*)var12)->values[2]=var18;
 if (likely(varonce21!=NULL)) {
 var22 = varonce21;
 } else {
 var23 = ")";
-var24 = standard___standard__NativeString___to_s_with_length(var23, 1l);
+var24 = core__flat___NativeString___to_s_full(var23, 1l, 1l);
 var22 = var24;
 varonce21 = var22;
 }
-((struct instance_standard__NativeArray*)var12)->values[4]=var22;
+((struct instance_core__NativeArray*)var12)->values[4]=var22;
 } else {
 var12 = varonce11;
 varonce11 = NULL;
 }
 {
 { /* Inline model#MClassType#mclass (var_ret) on <var_ret:MClassType> */
-var27 = var_ret->attrs[COLOR_nit__model__MClassType___mclass].val; /* _mclass on <var_ret:MClassType> */
+var27 = var_ret->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on <var_ret:MClassType> */
 if (unlikely(var27 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1138);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163);
 fatal_exit(1);
 }
 var25 = var27;
@@ -4173,25 +4173,25 @@ RET_LABEL26:(void)0;
 }
 }
 {
-var28 = nit___nit__MClass___nit__model_base__MEntity__c_name(var25);
+var28 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var25);
 }
-((struct instance_standard__NativeArray*)var12)->values[1]=var28;
+((struct instance_core__NativeArray*)var12)->values[1]=var28;
 {
-var29 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
+var29 = core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
 }
 {
-var30 = ((val*(*)(val* self))(var29->class->vft[COLOR_standard__string__Object__to_s]))(var29); /* to_s on <var29:nullable Object(RuntimeVariable)>*/
+var30 = ((val*(*)(val* self))(var29->class->vft[COLOR_core__abstract_text__Object__to_s]))(var29); /* to_s on <var29:nullable Object(RuntimeVariable)>*/
 }
-((struct instance_standard__NativeArray*)var12)->values[3]=var30;
+((struct instance_core__NativeArray*)var12)->values[3]=var30;
 {
-var31 = ((val*(*)(val* self))(var12->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var12); /* native_to_s on <var12:NativeArray[String]>*/
+var31 = ((val*(*)(val* self))(var12->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var12); /* native_to_s on <var12:NativeArray[String]>*/
 }
 varonce11 = var12;
 {
-var32 = nit___nit__AbstractCompilerVisitor___new_expr(self, var31, var_ret_type);
+var32 = nitc___nitc__AbstractCompilerVisitor___new_expr(self, var31, var_ret_type);
 }
 {
-nit___nit__AbstractCompilerVisitor___ret(self, var32); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <self:SeparateErasureCompilerVisitor>*/
+nitc___nitc__AbstractCompilerVisitor___ret(self, var32); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <self:SeparateErasureCompilerVisitor>*/
 }
 RET_LABEL:;
 }