Changes between Version 3 and Version 4 of FlexibleContexts
- Timestamp:
- 12/12/05 16:19:34 (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
FlexibleContexts
v3 v4 7 7 8 8 In Haskell 98, 9 * contexts of type signa rures, `newtype` and `data` declarations consist of assertions of the form C v or C (v t1 ... tn), where v is a type variable. Contexts on `newtype` and `data` declarations are RemovalCandidates.9 * contexts of type signatures, `newtype` and `data` declarations consist of assertions of the form C v or C (v t,,1,, ... t,,n,,), where v is a type variable. 10 10 * contexts of `instance` and `class` declarations consist of assertions of the form C v, where v is a type variable. 11 11 The proposal is that class arguments in contexts of type signatures and `class` declarations may be arbitrary types, e.g. … … 13 13 g :: (C [a], D (a -> b)) => [a] -> b 14 14 }}} 15 (Similar relaxation of `instance` declarations leads to UndecidableInstances.) 15 (Similar relaxation of `instance` declarations leads to UndecidableInstances. 16 Contexts on `newtype` and `data` declarations are RemovalCandidates.) 16 17 17 18 == References == … … 55 56 56 57 == Cons == 57 * Complicated context reduction story58 * Deferred error checking58 * complicated context reduction story 59 * deferred error checking
