calling ```ASSERT(features[i].feat_index < dimension);``` in the loop
is effectively the same as ```ASSERT(get_num_dimension() < dimension);``` outside the loop.

Any preference regarding to style/readbility?