2018-06-12 01:54:01 +03:00
|
|
|
(Module
|
|
|
|
(Empty)
|
|
|
|
(Statements
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(App
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(App
|
|
|
|
(App
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier))
|
|
|
|
(VariableIdentifier))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(App
|
|
|
|
(App
|
|
|
|
(App
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier))
|
|
|
|
(VariableIdentifier))
|
|
|
|
(VariableIdentifier))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(App
|
|
|
|
(ConstructorIdentifier)
|
|
|
|
(VariableIdentifier))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(App
|
|
|
|
(ConstructorIdentifier)
|
|
|
|
(VariableIdentifier))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(App
|
|
|
|
(App
|
|
|
|
(App
|
|
|
|
(ConstructorIdentifier)
|
|
|
|
(VariableIdentifier))
|
|
|
|
(VariableIdentifier))
|
|
|
|
(VariableIdentifier))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(UnitConstructor)))
|
2018-06-12 20:47:48 +03:00
|
|
|
(Function
|
|
|
|
(VariableIdentifier)
|
|
|
|
(Statements
|
|
|
|
(EnumFrom
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) })))
|
|
|
|
(Function
|
|
|
|
(VariableIdentifier)
|
|
|
|
(Statements
|
|
|
|
(EnumFromThen
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) })))
|
|
|
|
(Function
|
|
|
|
(VariableIdentifier)
|
|
|
|
(Statements
|
|
|
|
(EnumFromTo
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) })))
|
|
|
|
(Function
|
|
|
|
(VariableIdentifier)
|
|
|
|
(Statements
|
|
|
|
(EnumFromThenTo
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) })))
|
2018-06-12 01:54:01 +03:00
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(ListComprehension
|
|
|
|
(VariableIdentifier)
|
|
|
|
(Generator
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier)))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(ListComprehension
|
|
|
|
(Tuple
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier))
|
|
|
|
(Generator
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier))
|
|
|
|
(Generator
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier)))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(ListComprehension
|
|
|
|
(VariableIdentifier)
|
|
|
|
(Generator
|
|
|
|
(VariableIdentifier)
|
|
|
|
(Array
|
|
|
|
(Array
|
|
|
|
(Tuple
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) })
|
|
|
|
(Tuple
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }))
|
|
|
|
(Array
|
|
|
|
(Tuple
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) })
|
|
|
|
(Tuple
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }))))
|
|
|
|
(Generator
|
|
|
|
(TuplePattern
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) }
|
|
|
|
(VariableIdentifier))
|
2018-06-12 20:47:48 +03:00
|
|
|
(VariableIdentifier)))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(ListComprehension
|
|
|
|
(Tuple
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier))
|
|
|
|
(Generator
|
|
|
|
(VariableIdentifier)
|
|
|
|
(Array
|
|
|
|
(Integer)
|
|
|
|
(Integer)
|
|
|
|
{+(Integer)+}
|
|
|
|
{+(Integer)+}))
|
|
|
|
(Generator
|
|
|
|
(VariableIdentifier)
|
|
|
|
(EnumFromTo
|
|
|
|
(Integer)
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) })))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(ListComprehension
|
|
|
|
(ListComprehension
|
|
|
|
(Tuple
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier))
|
|
|
|
(Generator
|
|
|
|
(VariableIdentifier)
|
|
|
|
(Array
|
|
|
|
{-(Integer)-}
|
|
|
|
(Integer)
|
|
|
|
{+(Integer)+})))
|
|
|
|
(Generator
|
|
|
|
(VariableIdentifier)
|
|
|
|
(EnumFrom
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) })))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(App
|
|
|
|
(App
|
|
|
|
(VariableIdentifier)
|
|
|
|
{ (Integer)
|
|
|
|
->(Integer) })
|
|
|
|
(ListComprehension
|
|
|
|
(ListComprehension
|
|
|
|
(Tuple
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier))
|
|
|
|
(Generator
|
|
|
|
(VariableIdentifier)
|
|
|
|
(Array
|
|
|
|
(Integer)
|
|
|
|
(Integer))))
|
|
|
|
(Generator
|
|
|
|
(VariableIdentifier)
|
|
|
|
(EnumFrom
|
2018-06-12 23:18:44 +03:00
|
|
|
(Integer)))))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(RightOperatorSection
|
|
|
|
(ConstructorOperator
|
|
|
|
(ConstructorSymbol))
|
|
|
|
(VariableIdentifier))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(RightOperatorSection
|
|
|
|
(ConstructorOperator
|
|
|
|
(ConstructorSymbol))
|
|
|
|
(VariableIdentifier))))
|
2018-06-13 00:19:18 +03:00
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(LeftOperatorSection
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(ConstructorOperator
|
|
|
|
(ConstructorSymbol)))))
|
2018-06-13 00:50:38 +03:00
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(LeftOperatorSection
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(ConstructorOperator
|
|
|
|
(ConstructorSymbol)))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(InfixOperatorApp
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableOperator
|
|
|
|
(InfixVariableIdentifier))
|
|
|
|
(VariableIdentifier))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(QualifiedConstructorIdentifier
|
|
|
|
(ModuleIdentifier)
|
|
|
|
(ConstructorIdentifier))))
|
2018-06-13 00:19:18 +03:00
|
|
|
(Function
|
|
|
|
(VariableIdentifier)
|
|
|
|
(ConstructorPattern
|
|
|
|
(Statements
|
|
|
|
(QualifiedConstructorIdentifier
|
|
|
|
(ModuleIdentifier)
|
|
|
|
(ConstructorIdentifier))
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }))
|
|
|
|
(Statements
|
|
|
|
(InfixOperatorApp
|
|
|
|
(ConstructorIdentifier)
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
(InfixOperatorApp
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
(InfixOperatorApp
|
|
|
|
(TextElement)
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
(InfixOperatorApp
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
(InfixOperatorApp
|
|
|
|
(TextElement)
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
(InfixOperatorApp
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
(InfixOperatorApp
|
|
|
|
(TextElement)
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
(InfixOperatorApp
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
(TextElement)))))))))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(Do
|
|
|
|
(BindPattern
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(InfixOperatorApp
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }))
|
|
|
|
(BindPattern
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(InfixOperatorApp
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
{ (VariableIdentifier)
|
2018-06-13 00:50:38 +03:00
|
|
|
->(VariableIdentifier) })))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(Lambda
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(Lambda
|
|
|
|
(ConstructorPattern
|
|
|
|
(Statements
|
|
|
|
(ConstructorIdentifier)
|
|
|
|
(VariableIdentifier)))
|
|
|
|
(VariableIdentifier))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(Lambda
|
|
|
|
(VariableIdentifier)
|
|
|
|
(InfixOperatorApp
|
|
|
|
(VariableIdentifier)
|
|
|
|
(ConstructorOperator
|
|
|
|
(ConstructorSymbol))
|
|
|
|
(InfixOperatorApp
|
|
|
|
(VariableIdentifier)
|
|
|
|
(ConstructorOperator
|
|
|
|
(ConstructorSymbol))
|
|
|
|
(VariableIdentifier))))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(Lambda
|
|
|
|
(Statements
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableIdentifier))
|
|
|
|
(InfixOperatorApp
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
(InfixOperatorApp
|
|
|
|
(VariableIdentifier)
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
2018-06-13 01:01:46 +03:00
|
|
|
(VariableIdentifier))))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))))
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(InfixOperatorApp
|
|
|
|
(Integer)
|
|
|
|
(VariableOperator
|
|
|
|
(VariableSymbol))
|
|
|
|
(Integer))))
|
|
|
|
{+(Function
|
|
|
|
{+(VariableIdentifier)+}
|
|
|
|
{+(Statements
|
|
|
|
{+(PrefixNegation
|
|
|
|
{+(Integer)+})+})+})+}
|
|
|
|
{+(Function
|
|
|
|
{+(VariableIdentifier)+}
|
|
|
|
{+(Statements
|
|
|
|
{+(PrefixNegation
|
|
|
|
{+(VariableIdentifier)+})+})+})+}
|
|
|
|
(Function
|
|
|
|
{ (VariableIdentifier)
|
|
|
|
->(VariableIdentifier) }
|
|
|
|
(Statements
|
|
|
|
(PrefixNegation
|
|
|
|
(Integer))))
|
2018-06-13 01:07:58 +03:00
|
|
|
{+(Function
|
|
|
|
{+(VariableIdentifier)+}
|
|
|
|
{+(Statements
|
|
|
|
{+(InfixOperatorApp
|
|
|
|
{+(VariableIdentifier)+}
|
|
|
|
{+(VariableOperator
|
|
|
|
{+(VariableSymbol)+})+}
|
|
|
|
{+(App
|
|
|
|
{+(App
|
|
|
|
{+(VariableIdentifier)+}
|
|
|
|
{+(Lambda
|
|
|
|
{+(VariableIdentifier)+}
|
|
|
|
{+(InfixOperatorApp
|
|
|
|
{+(Tuple
|
|
|
|
{+(VariableIdentifier)+})+}
|
|
|
|
{+(VariableOperator
|
|
|
|
{+(VariableSymbol)+})+}
|
|
|
|
{+(InfixOperatorApp
|
|
|
|
{+(ConstructorIdentifier)+}
|
|
|
|
{+(VariableOperator
|
|
|
|
{+(VariableSymbol)+})+}
|
|
|
|
{+(App
|
|
|
|
{+(VariableIdentifier)+}
|
|
|
|
{+(VariableIdentifier)+})+})+})+})+})+}
|
|
|
|
{+(VariableIdentifier)+})+})+})+})+}
|
2018-06-13 01:01:46 +03:00
|
|
|
{-(Function
|
|
|
|
{-(VariableIdentifier)-}
|
|
|
|
{-(Statements
|
|
|
|
{-(PrefixNegation
|
|
|
|
{-(VariableIdentifier)-})-})-})-}
|
|
|
|
{-(Function
|
|
|
|
{-(VariableIdentifier)-}
|
|
|
|
{-(Statements
|
|
|
|
{-(PrefixNegation
|
2018-06-13 01:07:58 +03:00
|
|
|
{-(Integer)-})-})-})-}
|
|
|
|
{-(Function
|
|
|
|
{-(VariableIdentifier)-}
|
|
|
|
{-(Statements
|
|
|
|
{-(InfixOperatorApp
|
|
|
|
{-(VariableIdentifier)-}
|
|
|
|
{-(VariableOperator
|
|
|
|
{-(VariableSymbol)-})-}
|
|
|
|
{-(App
|
|
|
|
{-(App
|
|
|
|
{-(VariableIdentifier)-}
|
|
|
|
{-(Lambda
|
|
|
|
{-(VariableIdentifier)-}
|
|
|
|
{-(InfixOperatorApp
|
|
|
|
{-(Tuple
|
|
|
|
{-(VariableIdentifier)-})-}
|
|
|
|
{-(VariableOperator
|
|
|
|
{-(VariableSymbol)-})-}
|
|
|
|
{-(InfixOperatorApp
|
|
|
|
{-(ConstructorIdentifier)-}
|
|
|
|
{-(VariableOperator
|
|
|
|
{-(VariableSymbol)-})-}
|
|
|
|
{-(App
|
|
|
|
{-(VariableIdentifier)-}
|
|
|
|
{-(VariableIdentifier)-})-})-})-})-})-}
|
|
|
|
{-(VariableIdentifier)-})-})-})-})-}))
|