---input---
x: x + 1


A function that expects an integer and returns it increased by 1

x: y: x + y

(x: x + 1) 100

let inc = x: x + 1; in inc (inc (inc 100))

{ x, y }: x + y

{ x, y ? "bar" }: x + y

{ x, y, ... }: x + y

{ x, y } @ args: x + y

args @ { x, y }: x + y

---tokens---
'x'           Text
':'           Punctuation
' '           Text
'x'           Text
' '           Text
'+'           Operator
' '           Text
'1'           Literal.Number.Integer
'\n\n\n'      Text

'A'           Text
' '           Text
'function'    Text
' '           Text
'that'        Text
' '           Text
'expects'     Text
' '           Text
'an'          Text
' '           Text
'integer'     Text
' '           Text
'and'         Operator.Word
' '           Text
'returns'     Text
' '           Text
'it'          Text
' '           Text
'increased'   Text
' '           Text
'by'          Text
' '           Text
'1'           Literal.Number.Integer
'\n\n'        Text

'x'           Text
':'           Punctuation
' '           Text
'y'           Text
':'           Punctuation
' '           Text
'x'           Text
' '           Text
'+'           Operator
' '           Text
'y'           Text
'\n\n'        Text

'('           Punctuation
'x'           Text
':'           Punctuation
' '           Text
'x'           Text
' '           Text
'+'           Operator
' '           Text
'1'           Literal.Number.Integer
')'           Punctuation
' '           Text
'100'         Literal.Number.Integer
'\n\n'        Text

'let'         Keyword
' '           Text
'inc'         Literal.String.Symbol
' '           Text
'='           Operator
' '           Text
'x'           Text
':'           Punctuation
' '           Text
'x'           Text
' '           Text
'+'           Operator
' '           Text
'1'           Literal.Number.Integer
';'           Punctuation
' '           Text
'in'          Keyword
' '           Text
'inc'         Text
' '           Text
'('           Punctuation
'inc'         Text
' '           Text
'('           Punctuation
'inc'         Text
' '           Text
'100'         Literal.Number.Integer
')'           Punctuation
')'           Punctuation
'\n\n'        Text

'{'           Punctuation
' '           Text
'x'           Text
','           Punctuation
' '           Text
'y'           Text
' '           Text
'}'           Punctuation
':'           Punctuation
' '           Text
'x'           Text
' '           Text
'+'           Operator
' '           Text
'y'           Text
'\n\n'        Text

'{'           Punctuation
' '           Text
'x'           Text
','           Punctuation
' '           Text
'y'           Text
' '           Text
'?'           Operator
' '           Text
'"'           Literal.String.Double
'bar'         Literal.String.Double
'"'           Literal.String.Double
' '           Text
'}'           Punctuation
':'           Punctuation
' '           Text
'x'           Text
' '           Text
'+'           Operator
' '           Text
'y'           Text
'\n\n'        Text

'{'           Punctuation
' '           Text
'x'           Text
','           Punctuation
' '           Text
'y'           Text
','           Punctuation
' '           Text
'.'           Operator
'.'           Operator
'.'           Operator
' '           Text
'}'           Punctuation
':'           Punctuation
' '           Text
'x'           Text
' '           Text
'+'           Operator
' '           Text
'y'           Text
'\n\n'        Text

'{'           Punctuation
' '           Text
'x'           Text
','           Punctuation
' '           Text
'y'           Text
' '           Text
'}'           Punctuation
' '           Text
'@'           Punctuation
' '           Text
'args'        Text
':'           Punctuation
' '           Text
'x'           Text
' '           Text
'+'           Operator
' '           Text
'y'           Text
'\n\n'        Text

'args'        Text
' '           Text
'@'           Punctuation
' '           Text
'{'           Punctuation
' '           Text
'x'           Text
','           Punctuation
' '           Text
'y'           Text
' '           Text
'}'           Punctuation
':'           Punctuation
' '           Text
'x'           Text
' '           Text
'+'           Operator
' '           Text
'y'           Text
'\n'          Text
