Changes between Version 5 and Version 6 of Language
- Timestamp:
- 06/24/09 08:22:36 (4 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Language
v5 v6 30 30 {{{ 31 31 ImportDecl 32 ::= import ModuleId33 | import { ModuleId;+ }34 | foreign import String Var :: Type32 ::= import ModuleId 33 | import { ModuleId;+ } 34 | foreign import String Var :: Type 35 35 }}} 36 36 … … 42 42 {{{ 43 43 TopDecl 44 ::= Pragma 45 | InfixDecl 46 | TypeKind 47 | TypeDecl 48 | DataDecl 49 | EffectDecl 50 | RegionDecl 51 | ClassDecl 52 | InstanceDecl 53 | ProjectionDecl 54 | TypeSig 55 | Binding 44 ::= Pragma 45 | InfixDecl 46 | TypeKind 47 | TypeSynonym 48 | DataDecl 49 | EffectDecl 50 | RegionDecl 51 | ClassDecl 52 | InstanceDecl 53 | ProjectionDecl 54 | TypeSig 55 | Binding 56 }}} 57 [[br]] 58 59 60 == Pragma == 61 {{{ 62 Pragma 63 ::= pragma ... 56 64 }}} 57 65 66 These should be removed in favor of Haskell/GHC style pragmas #86. 67 58 68 [[br]] 69 70 71 == !InfixDecl == 72 73 {{{ 74 InfixDecl 75 ::= infixl Int Symbol;+ 76 | infixr Int Symbol;+ 77 | infix Int Symbol;+ 78 }}} 79 80 Sets the precedence and associativity of an infix binary operator. 81 [[BR]] 82 83 == !TypeKind === 84 85 Sets the kind of an abstract type constructor. 86 87 88 89 == !TypeSynonym == 90 {{{ 91 TypeSynonym 92 ::= type Con Var+ = Type 93 }}} 94 95 Type synonyms are not implemented yet #16.
