links
links copied to clipboard
User-definable abstract types
This patch makes it possible to declare abstract types in Links, e.g.
typename MyAbstractType;
typename MyParameterisedAbstractType(a,b,c);
The primary motivation for adding them is to be able to give types to alien data objects.
The representation of user-definable abstract types is distinct from the built-in abstract types. In a future patch we ought to reconcile these two representations.
Another thing left for a future patch is the ability to control kinds. Currently, all abstract types have kind Type and the induced default subkind.
Resolves #1099.