Lecture 24 Slides - Q3 Review

1 of 8

Lecture 23

Q3 Review

2 of 8

Logistics and Week Ahead

  • Monday (Today) - Q3 Review + MQ17
    • Exercise 8 due NEXT Monday at 11:59pm (good imperatives practice for Q3)
  • Wednesday - Files & Folders (Pre-Recorded + MQ18) + Tutorial 9
  • Friday - Q3 - in-person, in this room, normal class time

Announcements

  • Grades for assignments between Q2 and Q3 will lock in at the start of Q3. Make sure to let me know ASAP if something is missing / incorrect / etc.
  • No in-person events including classes and OH next week
  • Next Monday - Programming Languages (Pre-Recorded/Asynchronous + MQ19)
    • Ex8 Due - 11:59pm; MQ 19 will be due the following Monday at 11:59pm

3 of 8

After break

Week 12 (December 1st)

Reminder: only classes offered by Weinberg Departments have "Reading Week"

Ethics Module 9 - Reflection (Async - For Everyone) - due 12/7 at 11:59pm

  • Monday - Soft skills, Debugging, Testing
  • Wednesday - Intro to Asteroids (Pre-Recorded) MQ20 + Tutorial 10
  • Friday - Q4 Review + AMA (Exercise 9 Due)

Week 13 (Finals) Week

  • Monday (12/8) - Q4 (Section 2) - 9:00am - TCH Auditorium
  • Wednesday (12/10) - Q4 (Section 1) - 9:00am - TCH Auditorium

Q4 will be cumulative but still same format and still 49 minutes; if you want to take it with the other section you may, but I need to know in advance (at the latest Friday of Week 12) and you need to verify you don't have an exam conflict!

4 of 8

Quiz 3 - 11/21 - Friday

  • In-person here in the Auditorium at the time you are officially registered (those with testing accommodations should follow the usual procedures)
    • If you're in the 2pm section, I'm willing to let you take it during the 1pm section but I need to know in advance!
  • Make sure to bring your WildCard to class. You may receive an assigned seat (you'll get a Canvas message).
  • Taken on the Lockdown Browser on your personal computer; details on how to set it up are on our Canvas page as well as on the Quiz 3 page.
  • Very important to be connected to eduroam on Friday.
  • Three Types of Problems (49 minutes):
    • What's the type of this expression?
    • Here's a program; here's what we want to get out of it; here's what we get; fix it
    • Write a valid test for the given function definition
  • Covers everything up to and including Lecture 25 with a focus on imperatives and updated structs
    • You’ll be given glossary entries for specialized functions we learn about for HashMaps and Files/Folders
  • You do NOT need to memorize all of the functions (you get a glossary)
  • You DO need to know the Rules of Execution and Special Forms (which have gotten more extensive in recent weeks)
  • CHARGE YOUR COMPUTER THE NIGHT BEFORE.

5 of 8

Topics Overview for Q3

  • All the stuff from Q1+Q2
  • Imperatives
    • What are they
    • Why are they different
    • What special forms do they get us
    • Why do we need to be careful
  • super structs
    • Mutation
    • Subtyping
    • Methods
  • Hash maps*
  • Files & Folders*

*these won't be explicitly focused on and we'd give you glossary entries for any function asked about

6 of 8

Types and Type Signatures in imperative programs

  • It’s now possible to have functions that
    • Take no inputs
    • And/or generate no outputs
  • So we need type signature notations for these

-> number�-> string

  • Means a function that takes no inputs and returns a number, string, etc.

number -> void�string -> void

  • Means a function that takes a number, string, etc. and returns no output

7 of 8

Other changes since ISL+

8 of 8

PollEv questions for Q3 review! Checkout the included lecture files or watch the recorded version of the lecture to review.