Yes, technically what you say is true... But isn't somebody who is legally working & settled in the US for more than 10 years an immigrant?
In the long run, we should go for a point-based immigration system like Canada.
Anyway, the issue here is that the archaic laws discriminate based on race (country of origin) which is both unfair and doesn't make sense for the category (employment-based visa).