Courses taught by Jeffrey O. Shallit 
 Undergraduate courses 
	-  CS 130 (Developing Programming Principles) 
	
 -  CS 134 (Principles of Computer Science)
	
 -  CS 240 (Data Structures and Data Management)
	
 -  CS 340 (Data Structures and Algorithms)
	
 -  CS 341 (Algorithms)
	
 -  CS 360 (Introduction to the Theory of Computing) 
	
 -  CS 365 (Models of Computation)
	
 -  CS 462 (Formal Languages and Parsing)  
    	
 -  CS 466 (Algorithm Design and Analysis)
 
 Graduate courses 
    -  CS 760E (Algorithmic Number Theory)
    
 -  CS 760H (Formal Languages and Number Theory)
    
 -  CS 860 (Formal Languages and Number Theory)
 
 History 
Here is a file giving the names of all courses I've
taught at Waterloo.
E-mail:  