EBoard 27: Structured Data

Approximate overview

  • Admin
  • Lab

Administrative stuff

Introductory notes

  • New places!
  • If you have not done so already, please go to https://sites.grinnell.edu and click “Request a Domain”.
    • Did anyone try “I do not agree to the policies”?
  • Today’s fun fact: When I started teaching CSC-151, I assumed that “husk” and “kernel” were terms in common use. I learned about three years ago that one of my corny colleagues coined the terms for the class. (They’re still good ones.)
    • Please don’t spell it “kernal”.
    • It’s no longer funny to spell it “colonel”.
  • Today’s second fun fact. Here are the results of the school board at-large election.
    • Belcher: 1243
    • Bair: 1260
    • Starrett: 1229
    • Brown: 1210
    • Write-in: 20.
    • Every vote counts!
  • Today’s third fun fact: Google Doodle: https://g.co/doodle/wm8e7g4

Upcoming activities

Events

  • Mentor session Wednesday at 7 p.m.
  • Scholars’ Convocation Thursday at 11 am. Lara Janson ‘05. Humanizing Title IX: Centering Student Needs in Campus Community Responses to Sexual Violence.
  • CS Extra Thursday at 4pm (Science 3821): Majoring in CS. ««

  • Swimming vs. Luther, Saturday, 1 pm.

Other good things

  • Men’s Basketball vs. Coe, 7 pm Friday, Darby.
  • Do you feel anger? in about two weeks.

Upcoming work

  • Mini Project 6 due Sunday
  • SoLA 3 a week from today (due Thursday). Topics have been rearranged (I hope).
    • Sample SoLA to be updated.

Preregistration

  • I hope that many (most) of you are excited enough about CS that you will continue into CSC-161, Imperative Problem Solving
    • You get to program robots! Cute robots!
    • In C, a language that looks nothing like Scheme!
    • With Prof. Johnson or Prof. Eliott!
  • Feel free to chat with me, formally or informally.
  • Our mentors are also happy to talk to you about course selections.
    • Don’t just take CS (or Science or Math)!
    • You’ve already paid for music lessons, you might as well take them.
    • Wellness classes (in PE)

Q&A

Lab

Preliminaries

  • Join on computers!
  • Person closest to board is A
  • Go over reading!

Notes During Lab

Are there inputs you’d like me to test on exercise 2?

(clock->string (clock 1 2 3)) should give "01:02:03"

(clock->string (string->clock "01:02:03")) should also give “01:02:03”`

Do we need to check preconditions on clocks?

Nope.

Should we copy and paste the code for dates in order to have dates on exercise 3?

Yes. Sorry.

In exercise 4, you mean chirp has five parameters, not four, right?

Yes. Sorry.

In exercise 4, what about the identifier?

You should generate that with gensym.

In exercise 5, is it okay that we can’t use date-kernel-day?

Yup. That’s the point. We’ve achieved encapsulation.

In exercise 5, why does Racket say that date expects ten parameters?

It appears that there is a built-in date procedure that takes ten parameters. For some reason, it’s not seeing the date procedure you wrote.

In exercise 6, did you forget to include the word list?

Um. Yes. Sorry.

Post-Lab Comments

Can we stop with exercise 6?

Yes. Exercise 7 is now optional.

Sam, can you go over exercise 6 next class?

Yes. I hope someone will remind me.

Seven, too?

Perhaps.