Не совсем. Есть две формы вызова Random и два различных типа результата.
Докозательство. Это достигается "магией компилятора", как и в случае с write/writeln. А в современных компиляторах, это уже реализуется механизмом overload - перегрузкой функции, когда для каждого типа входных параметров определяется своя функция, и все эти функции имеют одинаковое имя.