pietervdvn / Lang

Yet another programming language
1 stars 1 forks source link

Make "is" totally equivalent to ":" (in function declaration), make ("," equivalent to "&") #49

Closed pietervdvn closed 9 years ago

pietervdvn commented 9 years ago

The : means that the type on the left is a subclass from the type on the right. E.g. in type declarations (a:Eq), category decls: cat Map k v : Set k.

For multiple subclassing, both "&" and "," should be possible: (a:Eq & Ord), (a:Eq, Ord); cat Map k v : Set k, List b, cat X a b: Monad a & List b