If they don't want immigrants to settle, they shouldn't allow migrant workers to stay for more than a year or so and make that clear, instead of leaving them in legal limbo for cheap labor, which is close to what Qatar was criticized for.
The fact that the only argument commenters here have against what these people are asking for is that “well, it was a law set 30 years ago…” in itself shows that there’s little defense for the current law and very clearly should be changed.
Sure, the current law sucks, but the same can be said for many laws in America. The law is the law, and if you don't like it, maybe you shouldn't go there, and should pick a more welcoming country.
As far as I can tell, the current situation is not a surprise: someone immigrating from India today should know the situation, and know that there's probably not a good likelihood of it being fixed anytime soon. Given that, why bother going to the US? As I said, there's other countries that are much more welcoming. It seems to me the only reason to go to the US is $$$. Tech workers are overpaid there relative to other countries, so this is attractive to people who want to take advantage of this.
Basically, I see this like going to a casino and then complaining about the odds being stacked against you there. America is a very high-risk place: sure, you can make a lot of money there, if you're skilled and lucky, but all it takes is one big medical problem and you're bankrupt.