CSC151.01 2015S, Class 17: Homogeneous Lists
============================================

* Lab writeup link to be posted five minutes in to class.

_Overview_

* Preliminaries.
    * Admin.
    * Upcoming Work.
    * Extra Credit.
    * Questions.
* `irb-anti-redder`
* Lab.
* Debrief.

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

### Admin

* Continue partners!
* Friday the 13th falls on Friday next month.  Be careful.
* *Exam 1 to be returned today*.  
    * I do not report averages or ranges or other statistics.  You know
      what your grade means, there's no reason to hear the rest.
    * I recommend that you do not discuss your grade with a classmate.
      You can ask about solutions to problems, but there is no benefit
      to discussing what grade you got.
    * **Do not post solutions anywhere.**
    * Note that if you got under 70 before TMTL, I will fill in an APR for 
      you.  The APR serves as a note to your adviser and to academic
      advising that you are having difficulty.  If you needed TMTL, then
      please talk to me and Prof. Weinman about getting an individual
      or small-group tutor.  (Also please come see me next week.)
    * Some cover sheets are missing.  I'll need some help identifying
      your exams.  Random numbers or code will work.
    * Notes on the exam distributed via email.  Please do not share.
      Read through before asking in-depth questions.
* Tomorrow, you will have the choice whether or not to have a partner
  for the homework.  One set of placement cards will be "no partner".
  One will be "with partner".  I need an estimate of how many people
  want to work alone.  (This time, your eyes, rather than mine, are
  closed.)
  
### Upcoming Work

* [Homework 4](../assignments/assignment.04.html).
    * Due TONIGHT at 10:30 p.m.
* NO Lab writeup for today: (was Exercise 5)
* Readings for Wednesday:
    * [The GNU Image-Manipulation Program](../readings/gimp-reading.html)
    * [Programming with GIMP Tools](../readings/gimp-tools-reading.html)

### Extra Credit Opportunities

#### Academic 

* 4:15 today, Mindset and Academics, JRC 101.
* Pioneer Diversity Council Diversity Dialogue, 8:30 p.m. 19th, Main Quad
  "Academic Athletes and Academic Students".
* Any two talks from TEDx Grinnell, February 21, 1-5 pm.  Live stream at 
  <http://tedxgrinnell.com>.

#### Peer Support (Morning Section)

* Julia's radio show, "The Hot Box".  Wednesday night/Thursday morning 
  1:00-2:00 a.m.  
* Host Prospies!

### Other Good Things

* Women's Basketball vs. Knox on Wednesday.
* Men's Basketball vs. Knox, Wednesday at 7:30 p.m., New Darby

### Questions

Anti-Red
--------

How did you invert the `irgb-redder` operation?

* Note: It's impossible to do it for every color, so we want one that
  works everywhere but at the margins.
* One solution
        (define irgb-anti-redder (o irgb-greener irgb-bluer irgb-darker))
* Critique: You need two `irgb-darker` because in the current implementation
  greener and bluer add 32 and darker subtracts 16.
        (define irgb-anti-redder (o irgb-greener irgb-bluer irgb-darker irgb-darker))
* Another solution (AOA)
        (define irgb-anti-redder 
          (lambda (irgb-color) 
            (irgb (- (irgb-red irgb-color) 32)
                  (irgb-green irgb-color)
                  (irgb-blue irgb-color))))
* Hint: Will `irgb-complement` help?
* A solution
        (define irgb-anti-redder-3 (o irgb-complement irgb-redder irgb-complement))
          
Lab
---

Debrief
-------
