Numerical solution of singular boundary value problems