cs1120  Fall 2012

cs1120: Introduction to Computing: Explorations in Language, Logic, and Machines

Instructor
Westley Weimer

Email Address
cs1120-staff@cs.virginia.edu

Class Meetings
Tuesdays and Thursdays, 3:30-4:45pm in Olsson 011
Office & Lab Hours
Mo 15:00-17:00 Stacks (J, L)
Mo 17:00-19:00 Olsson 001 (C, M)
Tu 13:00-15:00 Stacks (D, M)
We Noon-13:00 Rice 423 (Weimer)
We 13:00-14:00 Olsson 001 (C, J, M)
We 14:00-16:00 Olsson 001 (C, J, L)
We 16:00-17:00 Olsson 001 (C)
Fr 13:30-15:30 Olsson 001 (C, M, J)
Su 13:00-15:00 Olsson 001 (C, L)
Su 15:00-17:00 Olsson 001 (C, D)
Su 17:00-19:00 Olsson 001 (D, J)

Located in Thornton Stacks
or Olsson 001
or Rice 423 (We Noon-13:00)

Classes

Lecture slides will be available in PDF form for printing (6 slides per page).

Date Topic, Notes, Assignments
Tue Aug 28 Class 1. Introduction & Formal Systems
Thu Aug 30 Due Before Class: Complete the course registration survey.
Due Before Class: Optional: Read Course Book Chapters 1, 2 and 3 (Computing, Languages, and Programming)
Due Before Class: Optional: Start Udacity CS101 unit 1
Class 2. Formal Languages, Scheme, Rules of Evaluation
Due: Read the Lab Guide and the text of Problem Set 1.
Tue Sep 04 Signed Honor Pledge due at beginning of class.
Due Before Class: Optional: Finish Udacity CS101 unit 1
Class 3. The Value of Everything & Procedure Practice
Thu Sep 06 Due Before Class: Optional: Read Course Book Chapters 4 & 5 (Procedures and Data)
Problem Set 1 (Photomosaics) due before class (bring print-outs in to class — if you come in late, they are marked late).
Class 4. Procedure Practice & Programming with Data
Last semester many students were late with PS2. If you do not start it today, start it Friday.
Tue Sep 11 Due Before Class: Optional: Read Course Book up to Chapter 5.4
Due Before Class: Optional: Complete Udacity Unit 2
Class 5. List Recursion Practice & Examples
Thu Sep 13 Problem Set 2 (DNA Sequence Alignment) due.
Start Problem Set 3 (Fractals) now — it's long.
Class 6. List Recursion Examples & Recursive Procedures
Tue Sep 18 Class 7. L-System Fractals & Procedure Practice
Thu Sep 21 Due Before Class: Optional: Read Course Book Chapter 6 (Machines)
Class 8. Costs & Sneezewort & Growth
Tue Sep 25 Due Before Class: Optional: Read Course Book Chapter 7 (Cost)
Problem Set 3 (Fractals) due.
Class 9. The Cost of Sorts & Asymptotic Growth
Thu Sep 27 Class 10. Sort Procedures & Quicker Sorting
Tue Oct 02 Problem Set 4 (Cryptography) due.
Due Before Class: Optional: Read Course Book Chapter 8 (Sorting)
Class 11. Quickest Sorting & Double Deltas
Thu Oct 04 Due Before Class: Read A special report on the human genome: Biology 2.0
Class 12. Banburismus, Tree Sorting & Story So Far
Exam 1 out.
Thu Oct 11 Due Before Class: Read Neil DeGrasse Tyson's Science's Endless Golden Age
Optional: Watch Neil DeGrasse Tyson explain the history of the universe on The Daily Show (if the first segment does not load, don't worry about it)
Due Before Class: Optional: Read Course Book Chapter 9 (Mutation)
Exam 1 due (at start of class). (Don't forget PS5!)
Class 13. Programming With State & Golden Ages
Tue Oct 16 Class 14. Java and Object-Oriented Programming
Thu Oct 18 Problem Set 5 (Economics) due.
Due Before Class: Optional: Read Course Book Chapter 10 (Objects)
Class 15. Sex, Religion, Politics and Java
Tue Oct 23 Class 16. Inheritance & Godel
Thu Oct 25 Due Before Class: Optional: Read Course Book Chapter 11 (Interpreters)
Class 17. Godel's Proof
Tue Oct 30 Due Before Class: Optional: Read Course Book Chapter 12 (Computability)
Due Before Class: Read Steve Lohr's New York Times obituary of John W. Backus
Problem Set 6 (Narrative) original due date.
Class canceled.
Thu Nov 01 Due Before Class: Re-Optional: Read Course Book Chapter 11 (Interpreters)
Problem Set 6 (Narrative) final due date.
Class 18. Uncomputability, Viruses, OOP
Tue Nov 06 Class 19. Viruses & OOP & Java (Guest Lecture: Claire Le Goues)
Thu Nov 08 Due Before Class: Re-Optional: Read Course Book Chapter 11.4 (Laziness)
Class 20. Implementing Interpreters & Charme (Guest Lecture: Adam Brady)
Tue Nov 13 Problem Set 7 (Interpreter) due.
Class 21. Lazy Evaluation & Types (Guest Lecture: Adam Brady)
Thu Nov 15 Class 22. Static Type Checking & StaticCharme & The Internet (Guest Lecture: Adam Brady)
Tue Nov 20 Problem Set 8 (Communities) due.
Problem Set 9 (Final Project) Team Requests due (email by noon).
Class 23. Networking & Security
Problem Set 9 (Final Project) Design Review signup (hang around after class).
Problem Set 9 (Final Project) Description due (Midnight).
Tue Nov 27 Exam 2 out.
Class 24. Semi-Secure Websites & Modeling Computation
Thu Nov 29 Exam 2 due.
Class 25. Universal Machines & Lambda Calculus
Tue Dec 04 Class 26. Lambda Calculus: A Universal Language
class26.py — Python code demonstrating the power of the Lambda Calculus
Problem Set 9 (Final Project) Presentation requests due.
Thu Dec 06 Problem Set 9 (Final Project) Presentation Materials due (Noon).
Optional Class. Game Theory
Problem Set 9 (Final Project) Presentations due.
(PS9 peer evaluations are due at the same time if you're doing a presentation)

Presentations Start at 5pm in OLS 009 (extra credit for attending)
Reading day.
Tue Dec 11 Problem Set 9 (Final Project) Reports due (Noon: Email PDF).
(PS9 peer evaluations are due at the same time if you're doing a report)
To avoid confusion, I'll make this even more explicit: All course materials for CS 1120 (including any oral exams) are due by noon!


cs1120: Computer Science
University of Virginia
weimer@virginia.edu
Using these Materials