[BA3250, 40 St.George St., Toronto ON Canada M5S 2E4]


Picture of E.C.R.Hehner in 1970
my best work

book: a Practical Theory of Programming

all my publications

some non technical essays

course: csc465 and csc2104

course: Formal Methods of Software Design

course: Digital Circuits

curriculum vitae

former students

public lectures: Out with a Howl


reach me at hehner@cs.utoronto.ca
Picture of E.C.R.Hehner in 2012

I received my BSc in Mathematics and Physics from Carleton University in 1969, and my PhD in Computer Science from the University of Toronto in 1974. The subject of the thesis was how to match the representation of data and programs to computer architectures. I then joined the faculty, becoming a full professor in 1983, and Bell University Chair in Software Engineering in 2001. I retired, and became emeritus in 2012. My research has been mainly on the subject of formal programming methods, and the mathematics of program construction. I am the first winner of the annual Computer Science undergraduate teaching award. I have been a Visiting Scientist at Xerox Research Center, Palo Alto, a Visiting Fellow at Oxford University, a Visiting Researcher at the University of Texas, Austin, a Professeur Invité at the Université de Grenoble, a Visiting Professor at UBC, Vancouver, and at the University of Southampton. I was a member of IFIP Working Group 2.1 on Algorithmic Languages and Calculi, and IFIP Working Group 2.3 on Programming Methodology. I was an editor of Acta Informatica, Formal Aspects of Computing, and Information Processing Letters. I have written two books (the Logic of Programming, Prentice-Hall, 1984, and a Practical Theory of Programming, first edition Springer-Verlag 1993, current edition online) and many journal and conference papers. I have given hundreds of invited lectures at institutions around the world. I have taught short courses in Santa Cruz California USA, Marktoberdorf Germany, Macau China, Turku Finland, and Tandil Argentina. My former students have gone on to head major corporations and departments of computer science.

Last updated 2013 March 24