def NewType(name, tp):
 def new_type(x):
  return x
 new_type.__name__ = str(name)
 new_type.__supertype__ = tp
 return new_type

def NewType ( name , tp ) : def new_type ( x ) : return x new_type . __name__ = str ( name ) new_type . __supertype__ = tp return new_type
newtype creates simple unique types with almost zero runtime overhead .