'Attempt to make an application expression.  If the next tokens
are an argument in parens, then the argument expression is a
function being applied to the arguments.  Otherwise, return the
argument expression.'

def attempt_ApplicationExpression(self, expression, context):

    if self.has_priority(APP, context):
        if (self.inRange(0) and (self.token(0) == Tokens.OPEN)):
            self.token()
            argument = self.process_next_expression(APP)
            self.assertNextToken(Tokens.CLOSE)
            expression = ApplicationExpression(expression, argument, None)
    return expression
