In my mind, a great enhancement can be performances, but only if a clone can't be used in place of the original (in other words, they are different types with same definition).
Example. With the form
define [[ChildType]]:
child_type(ParentType).
the use of ChildType will create some (useless) overload because to access to the value, we need to extract the parent type. If the compiler known this is a clone, It will be able to do some optimisation and make value access as efficient as the parent (or original) type because their are exactly the same in memory.
The optimization is another problem (not yet solved). I spoke only about semantics. The 'feature' of aliases is that we may use a simple short name instead of a complicated schema applied to several types which may themselves be schemas applied to etc... This is just for comfort, readability, and maybe also a conceptual enhancement. This is still to be discussed. Anyway, aliases are not implemented yet.