12/17 FINAL EXAM 1pm-3pm. I've decided to make the final exam optional. Please turn in the term project and any other homework by 5pm on Monday, December 16.
12/10 Last day of class 631. Atkinson and Simmons present the basics of Haskell (basics as a pdf handout), powerpoint and some examples; Grossman and Pensy present Sather. Colangelo presents Smalltalk. Since we have three talks, please plan on 20-minute presentations.
12/5 Snow! we'll postpone the two scheduled talks until next Tuesday.
12/3 Riley and Thorpe present Eiffel, with an example (word); Bhatkar et al present Python.
11/28 Thanksgiving Day, No class.
11/26 Block and Chhay present Ruby; Kundu, Siegel and Kim present Tcl/Tk.
11/21 Abraham and Li present COBOL The COBOL handout (pdf)
11/19 Review presentation evaluation form, and discuss the BST functor example functorBST.ml
11/14 Discuss an excerpt from Paul Attie, "Lecture Notes - Axiomatic Semantics and Program Verification", pages 57-62
11/12 Discuss an excerpt from Paul Attie, "Lecture Notes - Axiomatic Semantics and Program Verification", pages 34-47
11/7 Discuss Hoare's paper "An Axiomatic Basis for Computer Programming", and discuss AG evaluator ML project.
The project will be in three parts:
11/5 No class, since Charles will be chairing CIKM'02
10/31 Return midterm and homework 6. Schedule team presentations.
10/29 Midterm exam.
10/24 Discussion of homwork 6, and review for exam.
10/22 More on ML, including structures, signatures, and functors.
10/17
10/15 We'll be discussing the Appell and MacQueen paper on SML of New Jersey
10/10 Return Homework 3. Discuss higher-order functions in ML. More on team
presentations.
Exercises 5.4.1, 5.4.5, 5.4.6, and 5.4.7 on pages 166-167 of Ullman's book. Please code up your solutions with some test data to demonstrate that they work.
10/8 Discussion of the Lee and Harper handouts. Return Homework 2. Discussion of student presentations.We have reserved time at the end of the semester for student presentations. Please form teams of two members, and send me by COB Monday 10/14 an email saying who your eam is, and which language(s) you wish to present. I will approve the languages to be presented, on the basis of not too old, not too specialized, not too familiar, and not too weird. (I won't use the same criteria for the teams themselves :-)
10/3 More about ml-yacc, from the documentation on the web site. Also distributed
handouts, namely Kent Lee's Creating a Recursive-Descent Parser, and an excerpt
from Harper's new ML book, sections 11.3-11.5. Both are accessible through the
Resources page
10/1 Details of ml-yacc and ml-lex, using the examples found in /cs/sml/src/ml-yacc/examples/calc.
Gave another homework assignement, namely:
Adapt the octal arithmetic AG from Homework 1, converting it to hexadecimal.
Use the tools ml-lex, ml-yacc, and cm, as in the calc example. It's ok to assume
that the user will type in only hex constatnts, in ML format, but this assignement
can be done without assuming this.
9/26 More ML, especially the handout and examples using difference lists and
timers. The example program diff.ml
9/24 Collected Homework 2, went through ML slides, including some examples. Assigned
Exercises 3.3.1, 3.3.3, 3.3.7, and 3.3.14 on pages 74-76 of Ullman's book
9/19 class is cancelled. I recommend working on an ML tutorial, such as A Gentle Introduction to ML
9/17, Returned Homework 1, and assigned
Exercises 2.4.1, 2.4.5, and 2.4.6 in Ullman's book.
9/12 Began talking about ML, and assigned Farrow paper as reading for next time. Collected Homework 1.
9/10 I think we went over the Paakki paper
9/5 Assigned Homework 1, the octal calculator AG
Modify the binary attribute grammar example to handle octal arithmetic. Your program should accept octal numbers of reasonable magnitude, perform addition, subtraction, multiplication, and division as indicated, and print the result. The arithmetic operators will have their usual preference. Parentheses have their usual meaning. You may wish to check for division by zero. You may support unary minus if you like. If you wish, allow string expressions with the single operation of concatenation
9/3 Began talking about Knuth paper
8/29 The first day of class, so Introduction to the course