Ссылка на метод в классе

<?php 
## Пример класса с методом    Котеров 429
class MathComplex1   
{     
public $re, $im;     
// Добавляет к текущему комплексному числу другое     
function add(MathComplex1 $y)     
{       
$this->re += $y->re;       
$this->im += $y->im;     
}     
// Преобразует число в строку (например, для вывода)     
function __toString()     
{      
 return "({$this->re}, {$this->im})";     
}   
} 
?>

Объясните, а почему мы пишем слово "MathComplex" cлево , переменной $y, и без запятой? Как вы это понимаете?

function add(MathComplex1 $y) 
{
...
}

и чем отличается эта запись от стандартной записи функии в Паскале где нужно разделять переменные или если это ссылочная переменная, то пишется двоеточие с указанием типа переменной?

В данном случае, написание

add(MathComplex1 $y)

говорит о том, что функция add принимает один аргумент и аргумент должен быть экземпляром класса MathComplex1. Если написать

add(int $y)

, то это будет указывать на то, что аргумент должен быть целым числом.
В PHP объекты передаются по ссылке, остальное "копируется"