C compiler with embedded metalanguage.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

35 lines
531 B

@(import("boot.mc"))
@{
classCopy(class) {
{values: clone(class.values), functions: clone(class.functions)};
}
initClass(class) {
out = {};
if (class == null) {
out.values = {};
out.functions = {};
}
out;
}
new(class, param) {
k = 0;
out = initClass();
for (i in class.values) {
out.values[i] = clone(param[i]);
k++;
}
for (i in class) {
if (i != keys(class)[0] ) {
out[i] = clone(class[i]);
}
}
return out;
}
nil;
}