Click here to go to recent lectures. If this falls
behind, please send me email.
Approximate Dates of Lectures:
- Thursday 8/31
Go over syllabus and start Chapter 1. My overview slides
- Tuesday 9/5
Start the slides from Sebesta Chapter 1, and started
on slides for Chapter 2
- Thursday 9/7
Continue with the slides on chapter 2, and discuss the article entitled "An
interview with Brian Kernighan
- Tuesday 9/12
Finished Chapter 2
- Thursday 9/14
Dr. Finin is the guest lecturer, and begin covering the slides
for Chapter 3. Assign Homework
1
- Tuesday 9/19
Continue Chapter 3
- Thursday 9/21
Turn in Homework 1. Continue Chapter 3.
- Tuesday 9/26
Finish Chapter 3 and begin slides for Chapter 4.
Assign Homework
2
- Thursday 9/28
Finished Chapter 4.
- Tuesday 10/3
Return Homework 1. Collect Homework 2. Assign Homework
3. Start on slides for Chapter 5.
- Thursday 10/5
Continue Chapter 5. Maybe we'll begin discussion of Java. The slides
on Java are now available.
- Tuesday 10/10
Continue covering Java. Code for the echo.java
example is available.
- Thursday 10/12
More Java
- Tuesday 10/17
Still more Java. Assign Homework
4
- Thursday 10/19
Return Homework 3. More Java. Class will be let out early.
To prepare for the exam, I suggest looking at sample exams from previous semesters,
still on the web. Also, think about ways in which assigned homework problems
could be modified to make exam questions. Become more familiar with end-of-chapter
exercises that were not assigned as homework. The exam will focus on material
that is in the book and was covered in class. I am not interested in testing
for obscure detail that was not covered in class.
- Tuesday 10/24
Collect Homework 4.
- Thursday 10/26
Midterm exam
- Tuesday 10/31
Return midterms
- Thursday 11/2
More Java
- Tuesday 11/7
Assign Homework
5.
Continue covering Java. Code for the envSnoop.java
example is available.
A copy of the Windows 98 Java Development Kit is available here.
This file is a little more than twenty megs in size.
Documentation for the Java API is available here.
Java software for other platforms, and more documentation, is available at
the Javasoft site.
- Thursday 11/9
Finish the Java slides, and discuss the Java programming project. The slides
on Applets and the slides on event loops
and the
slides on the AWT package for GUIs and the slides
on inner classes and the slides on the model-view-contoller
design pattern are now available.
- Tuesday 11/14
Go over the Java needed for the project. The program sample.java
that demonstrates I/O from standard input is now available.
More Java. Examples of networking programs.
- Thursday 11/16
Begin slides on functional programming
- Tuesday 11/21
Continue functional programming, and probably begin the slides
on Lisp.
Assign Homework
6
- Thursday 11/23
Thanksgiving holiday
- Tuesday 11/28
Finish the Lisp slides, with a live demo of Lisp on the PC.
The Lisp
tutorial that comes with Common Lisp. If you want to install Common Lisp
on your own PC, check out this
ftp site.
- Thursday 11/30
Continue Lisp. I have some more slides on Lisp
, followed by even more Lisp slides. I hope to demo
emacs on the PC, including use of Lisp in emacs.
- Tuesday 12/5
Begin discussing the functional language ML. There is a version of SML
for Windows 95/98/NT in the form of a 7 megabyte self-extracting archive.
I strongly recommend letting the system be installed in the default (C:\sml)
directory. The example ML program that shows preorder
tree traveral is available. Another example shows postorder
traversal. The abstract
syntax tree handout is now available. The examples LoopIt
and factorial
comparison are now available.
The slides
for ML are now available.
- Thursday 12/7
Assign Homework
7
Introduction to Smalltalk. The slides
for a Brief Overview of Smalltalk are available. If time permits, a demo
of Squeak.
You can read more about Squeak on the Squeak
Home Page.
The latest version of Squeak, Squeak 2.8, is available in zipped form. Squeak2.8
for Windows and NT.
- Tuesday 12/12
Preview of final exam. Maybe a demo of Smalltalk.
Final Exam Preview
The emphasis will be on material covered since the midterm, although topics
from before the midterm are fair game.
- Java
- A program trace involving some sort of graph algorithm is possible.
- The final will be similar to the midterm with respect to length and type
of questions.
I will allow you to bring a single page of notes to the Final Exam. One sheet
of 8 1/2 by 11 paper, written on only one side. The exam is otherwise closed
book.
- Thursday 12/21, 1-3pm, Final Exam
Web resources
Programming
Language Research
Free Compilers and Interpreters
Microsoft's
Powerpoint Viewer for Windows 95/98 and NT