During my time at Queen's, my teaching has focussed on the areas of artificial intelligence, mathematical logic and bioinformatics. This has involved the teaching of foundational material as well as advanced applications. Recently I was the primary developer of a new program: Biomedical Computing (http://www.cs.queensu.ca/biomed/), a Bachelor of Science Honors, Subject of Specialization Degree. This has involved extensive curriculum and course development as it is the first program of its kind in Canada. Following is a full list of courses taught since 1981.
CISC 101 Introduction to Computer Programming
CISC 114 Introduction to Computing Science
CISC 130 Introduction to Computer Science for Engineers
CISC 132 Introduction to Computer Programming for Engineers
CISC 201 Introduction to Mathematical Logic
CISC 203 Discrete Math and Logic I
CISC 204 Logic for Computing Science
CISC 300 Principles of Programming Languages
CISC 364 Functional and Logic Programming
CISC 352 Artificial Intelligence I
CISC 452 Artificial Intelligence II
CISC 834 Topics in Knowledge Representation and Machine Learning
CISC 850 Computational Techniques for Molecular Biology
CISC 856 Artificial Intelligence
CISC 863 Knowledge Representation
CISC 866 Logic of Programming
CISC 875 Bioinformatics