The classical SLT looks at learning very much from the point of view of underlying function classes. The basic idea is that good learning guarantees can be obtained if one uses simple function classes. The simplicity of a function space can be measured by one out of many capacity measures such as covering numbers, VC dimension, Rademacher complexity, and so on.
