The idea that the business owns your ass for a minimum of precisely 40 hours a week where you must be solely focused on the outcome of the business is both toxic and nonproductive.
It's really hard to generally evaluate employees on productivity - especially in CS - and so our compromise is that we all lie a bit and say "We're paying you for 40 hours a week" and we reply "Yes - my compensation is tied purely to the fact that I am here for forty hours".
I think it's a much longer road to better employee respect.
And I have, though it's always tempered by two things, namely, A. If the job routinely requires > 40 hours a week, then the job is poorly defined and we need to modify expectations, and B. That if I'm working to the job and not the hours, it doesn't matter if I only put in 30 hours one week, if the work is being done (and, likewise, if THAT is routine, the job is also poorly defined, and I need to ask for more things to do).
do you punch a timecard or do you get the same check every month or whatever your pay period is?
I think this is European approach, trying to eliminate the luck factor out of ones success.