Computer science is the science of abstraction.
In lectures, I sometimes present my high level analysis for all movies. The protagonists face challenges and adversity and discover the true meaning of love and friendship. This works for Casablanca, Gone with the Wind, Star Wars, Rocky, etc. It occurs to me that this course has been a similar journey. As a student, you faced the challenges of the problem sets and exams, and now, I conjecture that you have achieved, if not a love of computer science, at least friendship with racket, UNIX, and recursion.
From decvax!utzoo!utcsrgv!roderick Mon Nov 1 14:24:35 1982 (Via umpteen intermediaries) We don't need no indirection We don't need no flow control No data typing or declarations Hey! Did you leave the lists alone? Chorus: All in all, it's just a pure-LISP function call. We don't need no side effect-ing We don't need no scope control No global variables for execution Hey! Did you leave those args alone? (Chorus) We don't need no allocation We don't need no special nodes No dark bit-flipping in the functions Hey! Did you leave the bits alone? (Chorus) We don't need no compilation We don't need no load control No link edit for external bindings Hey! Did you leave that source alone? (Chorus, and repeat)(From the Yale AI Songbook. These are songs I used to perform at Yale AI parties with Jim Meehan, an accomplished pianist, who was in town this week for the YSO concert.)
We have introduced lots of topics this semester, including:
At the start of semester, I gave you the top ten reasons for learning racket. Now I ask you to rank them.
What is the top reason for learning racket? (top ten list)
https://pollev.com/slade You may also download the app to your phone. Use the "slade" poll id.
Results: watch this space
They win 15 points each, posted to Canvas VJ. The runners-up earned 10 points each.
tc201sort.pdf experiment with TC-201 sort program. Plotted in google sheets with insert chart.
Professor Ozan Erat lectured on 11/14/22: big-O Asymptotic Analysis
Big-O Cheat Sheet Know Thy Complexities!
Closures + mutators:
Here is a practice exam. (solutions). (final.rkt code for solutions) Ignore questions 1, 6, 7(c), 7(e), and 10. We will cover box and pointer notation. Plus Turing Machines and UNIX, through principle 6, that is, everything. Practice TC-201 programs. solutions. Since TC 201 was not on the second midterm, it will be emphasized on the final.
If your grade on the final exam is higher than your lower midterm grade, it will replace that grade. The quality of mercy is not strained.
Please remind your students to sign up to reserve a space with us through their SAS Accommodate portal:
Check out the Fall 2024 Canvas syllabus which has additional suggested materials.
My advice is to write as many C programs as possible over the summer.
All good. I recommend that you also create a LinkedIn account as an online resume. I invite all of my Yale students to connect to me on LinkedIn to leverage my network, such as it is. I also am interested in following your trajectory, but not in a creepy way.
Valedictory Cavafy: Ithaka
More appropriate: Billy Collins just in time for Mother's Day, May 11th. youtube