extern SLTNode *sltNodeMakeArgument(SLTNode *expression);
extern SLTNode *sltNodeMakeArrayAccess(SLTNode *array, SLTNode *access);
-extern SLTNode *sltNodeMakeTypeAccess(SLTNode *type, SLTNode *access);
+extern SLTNode *sltNodeMakeMemberAccess(SLTNode *type, SLTNode *access);
extern SLTNode *sltNodeMakeFunctionCall(SLTNode *function, SLTNode *arguments);
extern SLTNode *sltNodeMakeVariableDefinition(SLTNode *type, SLTNode *identifier, SLTNode *defaultExpression);
-extern SLTNode *sltNodeMakeTypeDefinition(SLTNode *identifier, SLTNode *members);
-extern SLTNode *sltNodeMakeTypeMemberDefinition(SLTNode *type, SLTNode *identifier);
+//extern SLTNode *sltNodeMakeTypeDefinition(SLTNode *identifier, SLTNode *dimension);
+
+extern SLTNode *sltNodeMakeUserDefinedTypeDefinition(SLTNode *identifier, SLTNode *members);
+extern SLTNode *sltNodeMakeUserDefinedTypeMemberDefinition(SLTNode *type, SLTNode *identifier);
extern SLTNode *sltNodeMakeFunctionDefinition(SLTNode *type, SLTNode *identifier, SLTNode *parameters, SLTNode *body);
extern SLTNode *sltNodeMakeFunctionParameterDefinition(SLTNode *type, SLTNode *identifier);