CSCE 590 (Fall 2020): Lecture Log

August 20 (Thu), 2020 Beginning of course. The course is taught synchronously using Blackboard Collaborate Ultra. All students are in attendance. Syllabus information. Introduction to the three websites used in the course. Introduction to the major source materials (books) that will be used. Ch.1 [H], using the slides from the author.
[H] Ch.1 [TFWH], started. The students are asked to read Ch.1 [H] and Ch.1 [TFWH]. See the main course website for detailed information on [H], [TFWH], and other materials.

August 25 (Tue), 2020 HW1 assigned: Do the exercises at the end of Chapter 1 [H], due 2020-09-01 (Tuesday). Turn in your work (a single pdf file) using the departmental dropbox. We covered all items in the agenda, except item 12.

August 27 (Thu), 2020 HW2 assigned: Programming exercises at the end of Ch.2 [H], due 2020-09-03 (Thursday). See the next log entry for an important update on HW2. We covered the items in the agenda through item 12, partly: Ch.1 [TFFH] through Section 1.3.

September 1 (Tue), 2020 HW2 assigned: Programming exercises at the end of Ch.2 [H] and Exercise 1.F [TFWH], due 2020-09-08 (Tuesday). See details of submission in dropbox. We covered the items in the agenda through item 12,

September 3 (Thu), 2020 We covered the items in Ch.3 [H] (Types and Classes) and Ch.2 [TFWH] through the middle of p.26. We covered the items in the agenda through part of item 11, as just described.

September 8 (Tue), 2020 HW3 assigned: Exercises 1-4 Ch.3 [H]. Exercises 1 and 8 Ch.4 [H]. Students are asked to resubmit Exercise F [TFWH] by showing that their programs compile and run with input from a file (dictionay) and output to a file (result). We completed Ch.2 [TFWH] (Expressions, Types and Values). We completed Ch.4 [H] (Defining Functions). We covered the items in the agenda through item 12,

September 10 (Thu), 2020 HW3 is due on September 15. We completed Ch.5 [H] (List Comprehensions). We started Ch.3 [TFWH] (Numbers). We covered the items in the agenda through the beginning of item 7.

September 15 (Tue), 2020 HW4 is due on September 22. HW5 is due on September 24. Details on these assignments are in the departmental dropbox. We completed Ch.3 [TFWH] (Numbers). We completed Ch.6 [H] (Recursive Functions). We covered the items in the agenda through item 8.

September 17 (Thu), 2020 HW6 is due on September 22; this assignment requires viewing a video and completing a worksheet. The worksheet and other details are on main website and deparmental dropbox. Discussion of some issues concerning HW3: (mis-)use of the where clause and the apply function. We completed Ch.7 [H] (Higher-Order Functions). We covered the items in the agenda through item 8.

September 22 (Tue), 2020 HW6 will be accepted with no penalty until the start of class on Thursday, September 24, Review of HW6. Ch.4 [TFWH] (Lists) through Section 4.4. Some comments on HW4. We covered the items in the agenda through parts of item 7.

September 24 (Thu), 2020 Ch.4 [TFWH] (Lists) completed. We covered the items in the agenda through item 7.

September 29 (Tue), 2020 HW7 assigned, due on October 6. Ch.8 [H] (Defining Types and Classes) completed. We covered items 1-6 and 8 in the agenda.

October 1 (Thu), 2020 HW8 assigned, due on October 8. (Please note that this assignment was changed with respect to the one announced in class. Read the agenda.) We covered items 1-9 in the agenda.

October 6 (Tue), 2020 HW8 due date changed to October 13. The midterm exam will be on Thursday, October 8. It will be made available at about 10:05 on Thursday, October 8. Students will have 75 minutes to complete it. They will be allowed to start at 10:05 or later during the day. Ggci can be used. The textbooks and the Haskell 2010 report can be consulted. Nothing else can be used. We covered items 1-9 in the agenda. Item 9 was not completed in class.

October 8 (Thu), 2020 Midterm exam.

October 13 (Tue), 2020 Midterm review. A simple Sudoku solver (Ch.5 [TFWH]), started. We covered items 1-7 in the agenda. Item 7 was not completed in class.

October 15 (Tue), 2020 HW9 assigned, due on 2020-10-22. (Due date later changed to 10-27) See the agenda for details. A simple Sudoku solver (Ch.5 [TFWH]), completed. Some comments on compilation and profiling of Haskell programs, as described in Section 9.7 [H] ("Performance Testing"). In Windows PowerShell, Measure-Command can be used in place of the Unix/Linux time command: > Measure-Command {.\countdown}, where > is the PowerShell prompt, is equivalent to $time ./countdown, where $ is the Unix prompt. see https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/measure-command?view=powershell-7. While time displays standard output by default, Measure-Command requires using a pipe as in the following example: Measure-Command {.\countdown | Out-Default}. If you do not need to display the output but want to save in a file, you can do it as in the following example: Measure-Command {.\countdown > output.txt}. We covered items 1-9 in the agenda. Item 9 was not completed in class.

October 20 (Tue), 2020 HW9 due date changed to 2020-10-27. More on performance testing (Section 9.7 [H]). Formal semantics, with an emphasis on denotational semantics; presentation based on Ch.9 ("An Introduction to Formal Semantics") of: Carlo Ghezzi and Mehdi Jazayeri. Programming Language Concepts, 2nd ed. Wiley, 1987. Related materials are linked to the course website. We covered items 1-9 in the agenda.

October 22 (Thu), 2020 HW10 assigned. See agenda for details. Ch.10 [H] ("Interactive Programming") almost completed. We covered items 1-7 and 8-9 in the agenda.

October 27 (Tue), 2020 HW11 assigned. See agenda for details. Ch.10 [H] ("Interactive Programming") completed. We covered agenda items 1-8, 9 in part, and 11-13 in the agenda.

October 29 (Thu), 2020 HW11 due date changed. See agenda for details. Ch. 11 [H] ("Unbeatable Tic-tac-toe") mostly done. I plan to record a lecture at the usual time on November 3, and, while students will not be turned away if they attend the recording, attendance will not be taken. I emphasize that November 3 is an asynchronous activity day. The recorded lecture must be viewed before class on November 5. We covered agenda items 1-6, most of 7, and 10-12 in the agenda.

November 3 (Tue), 2020 General Election Day is an Asynchronous Online Day at the university. I recorded a lecture that must be viewed before class on November 5. I covered items 1-7, a small part of 8, and 11 in the agenda.

November 5 (Thu), 2020 Technical note: I used the Brave internet browsed (Chromium based) to show videos in Blackboard Collaborate Ultra, as recommended to me by Ryan Austin (departmental systems administrator); it worked well. We covered items 1-5, part of 6-7, 9-11 in the agenda.

November 10 (Tue), 2020 We covered items 1-6 almost in full and items 10-11 in the agenda.

November 12 (Thu), 2020 HW12 assigned: Exercises 1-5 Ch.12 [H], due 2020-11-19. I showed to the class the good solution of exercise 11.3 by Logan Corley. We covered items 1-7 and 11-12 in the agenda.

November 17 (Tue), 2020 HW13 assigned: Exercises 7-8 Ch.12 [H], due 2020-11-23. We covered items 1-8, 9 (partly), 10 and 12-13 in the agenda.

November 19 (Thu), 2020 HW 14 assigned: Exercises 1-6 at the end of Ch.15 [H], due 2020-12-01. We covered items 1-11, 14-15 in the agenda.

November 24 (Tue), 2020 We covered all items in the agenda.

December 1 (Tue), 2020 We covered all items in the agenda. (See the agenda for final exam information.) Last class meeting.