In my younger days I taught math in high school. There is no way for a student to learn, to master the concepts without doing homework to practice and internalize the material that will help them in their life ahead - not just knowing the math but using the discipline learned in other phases of life as well. Ditto - history, English composition and literature, civics, etc..
And you don’t have the kid 8 hours a day. Most teachers have them for an hour a day, some for three. If you want educated people you must work at it - demand it.
If you sat me down in an Algebra II class and taught me the material directly, then gave me 10 problems to do for homework, I might get half of them right at best. But if you gave me one homework problem and told me I had to write a program in BASIC or Pascal to solve that problem and user-input variations of it, I'd get the best grade in the class by a wide margin.