In more formal terms, since it is a uniform distribution you can write
random(x) = random()*x
then you can easily see that random(random(random())) = random()*random()*random()
The resulting distribution is not equal to random()^3, because e.g. the probability that all 3 random calls give you a number <0.5 is only 0.125.