Строка всегда является ссылкой (любые изменения внутри функции всегда будут проецироваться на изначальный массив. Точнее, ты работаешь напрямую с переменной, но не суть). Она не может передаваться по значению (Достаточно просто, перед передачей данных в функцию, создать массив аналогичного размера, записать в него значение основного массива и передавать уже содержимое "второстепенного" массива).
Потому что в Pawn упрощена работа с памятью и в данном случае автоматическая передача по ссылке, видимо, для авторов языка выглядела более оптимальным вариантом. Хотя может у этого есть и более высшая цель