Предположим, что процедура имеет более одного результата? Вы можете иметь несколько выходных параметров.
В языках, где вы возвращаете сложные объекты, мы, как правило, будем создавать, например, объект результата CartesianCoordinate, но в противном случае может быть полезно иметь параметры outX и outY.