Ein Typ, der alle Operationen seines Supertyps unterstützt. Das Schlüsselwort subtype kann mit Klammern verwendet werden, um festzulegen, dass ein Typ auf einen bestimmten Typ beschränkt ist. Zum Beispiel verwenden verschiedene [Array-Methoden subtype, um zu definieren, dass alle Elemente des Arrays einen vergleichbaren Supertyp haben müssen, damit die Methode funktioniert.
(Input:[]t where t:subtype(comparable)).RemoveFirstElement<public>
(ElementToRemove:t)<computes><decides>:[]t
RemoveFirstElementHierfür müssen die Arrayelemente den Supertyp comparable haben, damit er bestimmen kann, ob Elemente in dem Array gleich dem Argument ElementToRemove sind.