Artificial Intelligence and Computer Programming