It seems you need the location to assign a uniformity value, and you need an index to request uniform information.
Yes, that’s the difference between the two.
Why is there a need for two meanings?
, OpenGL API, "". " " " - , ".
.
, GLSL 3D Labs, , - . , , , . , . .
, , , 3D Labs GLSL, . , glUniform .
. ARB, : " , ". API, , .
. API- . - 0 (GL_ACTIVE_UNIFORMS). , , , .
, API " ". , 0 . , .