Тут всё же немного вы не правы. Как правило, данные передаются так, как хранятся, чтобы не терять время на транзитную перекодировку.
Соответственно и в SMH: Правило Большого Индейца нарушено не бухты-барахты, а чтобы снизить накладные расходы.
PS. Кстати, а кто мешает не использовать long/real вообще? Нет типа данных - нет проблемы ~(с)