And that's rational if one or more of three things is true:
1) The company needs time to evaluate if the prospective employee is right for the job.
2) The employee needs time to see if the company is right for him. (If he decides not and quits after a few weeks, the training spent on him would be wasted, and his net value to the company would be zero).
3) The job is of such low value, that only a salary of essentially zero makes it viable to place a person into it (in which case the intern SERIOUSLY needs to re-evaluate his career choices!)
In real life, if a person doing a job results in products that make money for the company, then companies will compete with each other to get good people to place in the position. My daughter in college has done internships. They all paid her decent money.
Which is what I'm arguing for. Others here are arguing that interns shouldn't get paid for their work. I've never argued that they should get equal pay to regular employees. Just that they should be pay the market value of their work.
And dang near 2/3rd of the posters here thought that was a Communist or Leftist idea! Which tells me there are a lot of people here at the Free Republic that really aren't all the free-market oriented... or conservative, for that matter.