Mathematics and programming