Grammar
Grammar Notation
Result ::= component1 ( component2 | component3 ) |
component4 | [component5] component6
- /* comments */
- 'literal'
- (A|B): either of A or B
- A B: A then B
- [A]: Optional A
- (A)* : Repeating A zero or more times
- (A)+ : Repeating A one or more times
- {A}* : Repeating A zero or more times, separated with comma
- {A}+ : Repeating A one or more times, separated with commaTop-level
Module ::= ( TypeDecl | BindingDecl )*Naming basics
TypeName ::= CAPITAL_LETTER (ALPHABET)*
BindingName ::= ValueBindingName | TypeName | FunctionName
ValueBidningName ::= (LOWERCASE) (LOWECASE | '_')*
FunctionName ::= LOWERCASE (LOWERCASE | CAPITAL_LETTER)*
ModuleAlias ::= ValueBidningNameType Declaration
Binding Declaration
To Be Added Later
Last updated
Was this helpful?