CSC151.02 2016S, Class 03: An Introduction to Scheme
====================================================

    0. Pick up a card.
    1. Read the computer name on the card you received
    2. Using the map to identify the computer.
    3. Return the card to the jar.
    4. Process to the computer which was named on the card.
    5. Sit down
    6. The person sitting next to you is your partner
    7. If you have not met your partner, introduce yourself to your partner

_Overview_

* Preliminaries.
    * Admin.
    * Upcoming Work.
    * Extra Credit.
    * Questions.
* Lab 
* Debrief.

Preliminaries
-------------

### Admin

* Please grab a card and go to the computer named on the card.
* Office hours: MTWF 10-11, Tu 1-2.
    * Sign up at <http://rebelsky.youcanbook.me>.
    * Also feel free to stop by when my door is open.
    * Or to email me for an appointment.
* Weekly review sessions:
    * Wednesday (TONIGHT) at 8pm in the CS Commons with Zacharcy
    * Thursday at 10am in this room with SamR
    * Thursday at 8pm in the CS Commons with Kumar

### Upcoming Work:

* Readings for Friday:
    * Reading: [Symbolic Values](../readings/symbols-reading.html)
    * Reading: [Numeric Values](../readings/numbers-reading.html)
* Quiz Friday!
* [Assignment 2](../assignments/assignment.02.html) due next Tuesday
  at 10:30 p.m.
    * Your partner is the person with whom you are working today and
      Friday.

### Extra Credit

#### Academic

* Scholars' Convocation, Thursday, 11 am, JRC 101: Surveillance Techniques
  of the Romanian Secret Police.
* Community Conversations on Race, 7:30 p.m., Tuesday, February 2, 
  Lazier 3rd Floor Lounge

#### Peer

* Track and Field at Cornell this Saturday.
* Swimming at Macalester this Saturday.

#### Future

* Track and Field Grinnell Invite February 6.
* Swimming February 6 vs. UN and IAState.

#### Miscellaneous

* Caucus on Monday night.  (Or observe a Caucus on Monday night.)

### Questions

Lab
---

Yes, it is intentional that `(square 4)` doesn't work.

Yes, it's okay to experiment.  You are unlikely to break anything 
important, and you can blame me if you do.

Debrief
-------

_Does whitespace matter?_

    (define x 3)
    (define                               x                 3) ; OK
    (d e f i n e x 3)   ; Probably not
    (definex3) ;  Probably not
    (+ 3 (* 4 5))
    (+ 3 (* 45))
    (+ 3(* 4 5)); OK
    (+3 (* 4 5)) ; NO, +3 is not an operation

_How were you sure of the answer it gave for the square root?_

    > (sqrt 13543123)
    371

* Paper and pen
* Calculator (phone calculator)
* In Scheme - Sometimes programmers make corresponding errors in multiple
  procedures, so it's good to have alternate ways of checking correctness.

Observations

* This class is amazingly boring.  There is nothing to learn.  That new
  kid is going to regret dropping history.
* You can define things and save them.
* UM
* Scheme can function as a really tedious calculator.
* You can easily erase all of your work in the interactions pane by
  hitting run.
* Spaces are big in some parts of Grinnell.
* S (not Sam) is way too deep.
* Citations are tedious, but necessary.
* Pay attention to what you are typing.  Spacing and such make a difference.
* Subtle differences make a huge difference.
* Computer science professors are amazingly bad at writing instructions.
* There are hidden tricks.
    * Copy by selecting with left mouse button.
    * Paste by clicking middle mouse button.

