Ok final working version:
Code:
procedure TGLSLProgram.SetF(aname: string; arg: GLFloat);
begin
 glUniform1fARB(glGetUniformLocationARB(FProgramObject, PGLcharARB(ansistring(aname)) ), arg);
end;