The statement
TYPE name
creates the new type &"name", but in addition allows name to be declared as though it were a dummy variable in other type declaration statements. The consequence of this is that
TYPE name2 ...
and
DUMMY name1 ... MAKE name2,name1
differ in that in the second case, name2 is the name of a type which happens to be stored in the same way as the dummy variable name1, but which otherwise bears no relation to it, in the first case name2 is a name for the type that the dummy variable name2 already has, with any operations that would have been defined on a variable declared as name2 was declared still being defined on all variables of type name2.
Also note that this means that name must be otherwise unused in both the variable and type symbol tables.