Предлагаю добавить дополнительные математические и тригонометрические функции. Согласитесь, куда же без тригонометрических функций в языке который работает с двумерным пространством?
Для начала:
atan2($x, $y) - Для вычисление угла между точками. Использование: $angle = atan2($x1-$x2, $y1-$y2)
tan($angle) - Тангенс. Косинус и синус есть, а без тангенса куда?
atan($value) - Обратный тангенс. Как в лучших языках Европы.
acos($value) - Обратный косинус.
asin($vlaue) - Обратный синус.
C тригонометрическими разобрались. Теперь алгебраические:
abs($value) - Модуль числа. Очень удобно вычислить его одной функцией.
floor($value, $prec) - Округляет число вниз. round есть, а floor нету, как же так? $prec - точность как и в round($value, $prec).
ceil($value, $prec) - Округляет число вверх. Тоже в дополнение к round. $prec - точность.
min($value1, $value2[, ...]) - Возвращает самое маленькое число из всех переданных аргументов.
max($value1, $value2[, ...]) - Возвращает самое большое число из всех переданных аргументов.
Необязательные функции, наличие которых не критично, но хотелось бы:
pow($value, $exponent) - Возведение числа в степень.
nthrt($value, $n) - $n-ный корень числа. Вроде как и не нужен, но если вдруг понадобится то придется ужасные велосипеды городить.
ln($value) - Натуральный логарифм. Не знаю зачем он тут может пригодится, но во многих языках есть.
Так же в добавок ко всему этому хотелось бы в файле констант по умолчанию видеть:
PI - Число пи.
Необязательно:
PI_2 - Половина числа пи.
SQRT2 - Квадратный корень из двух. Используется достаточно часто, хоть можно вычислять напрямую с помощью функции sqrt.
SQTR1_2 - Квадратный корень из 1/2. Ещё может быть вычислен как sin(45). Из той же оперы.