you can use builtin delphi types aswell;

Code:
procedure TGLSLProgram.SetF(aname: string; arg: GLFloat);
begin
 glUniform1fARB(glGetUniformLocationARB(FProgramObject, PAnsiChar(AnsiString(aname)) ), arg);
end;
I'm currently at work converting all my code to be compatible with Delphi 2009, alot of this small stuff.