Significant advances have been made in the last year or two in algorithms and theory for Sturm—Liouville problems (SLPs). For the classical regular or singular SLP −( p( x) u′)′ + q( x) u = λw( x) u, a < x < b, we outline the algorithmic approaches of the recent library codes and what they can now routinely achieve. For a library code, automatic treatment of singular problems is a must. New results are presented which clarify the effect of various numerical methods of handling a singular endpoint. For the vector generalization −( P( x) u′)′+ Q( x) u = λW( x) u where now u is a vector function of x, and P, Q, W are matrices, and for the corresponding higher-order vector self-adjoint problem, we outline the equally impressive advances in algorithms and theory.