。1958年退伍后，回到牛津大学，研读统计学，取得学士后学位。在此期间，开始学习程式设计，他跟着学习。为了进一步学习俄语，他以英国文化协会的交换学生身份，至苏联莫斯科国立大学留学，跟随安德雷·柯尔莫哥洛夫学习数学，并研究机器翻译。1960年，在莫斯科国立大学取得博士学位后，任职于伦敦艾略特兄弟公司（Elliott Brothers Ltd），开发出第一个商用的ALGOL 60编译器，很快就成为公司的首席工程师。1968年，成为贝尔法斯特女王大学的教授。1977年回到牛津大学担任教授。现为牛津大学荣誉