Does anyone know the reason, why the clSetKernelArg uses only the argument index to specify the argument instead of the argument parameter name?

i think that the specification (maybe the OpenCL 1.1) should handle also the setting of the argument by it's name, not only by it's index number:
e.g.:
cl_int clSetKernelArg (cl_kernel kernel, const char *arg_name, size_t arg_size, const void *arg_value);

i'll appreciate any comments or ideas about this strange situation.

PS: is there a way (except parsing the opencl code file by the program itself) to get the number of kernel argument by it's parameter name? This would solve the issue mentioned above. I miss such a query using clGetKernelInfo.

thx, martin