Functional Problem Solving (CSC 151 2014S) : EBoards

CSC151.02 2014S, Class 17: Exam 1 Discussion


Overview

Preliminaries

Admin

Questions on the Homework

How do I get the image-transform problem to work?

image-variant needs a one-parameter procedure. You have a two-parameter procedure. You will probably need an anonymous procedure to fill in the second parameter.

(define myproc
  (lambda (color some-other-parameter-probably-named-gamma)
    ...))

(image-variant image (lambda (color) (myproc color some-other-value)))

What is an anonymous procedure?

A procedure with no name. It typically has the form (lambda (val) ...).

How do we take lists as input?

The same way you take any value as input.

(define myfun
  (lambda (lst)
    ...))

Suppose I have a procedure that I've taken as input and I want to apply it to a value, how do I do so?

 (proc value)

Sam, that wasn't very helpful. Can you be a bit more detailed.

Well ... part of the goal of the problem is that you figure this out. But an anonymous procedure that takes your procedure as input would help

(lambda (proc) (proc ...))

Apply some procedure to 1, 2, and 3 and make a list of the result

(map (lambda (proc) (list (proc 1) (proc 2) (proc 3)))
     (list square increment))

General issues

Exam strategies

Our approach:

Do:

Don't:

Additional Q&A


Samuel A. Rebelsky, rebelsky@grinnell.edu

Copyright (c) 2007-2014 Janet Davis, Samuel A. Rebelsky, and Jerod Weinman. (Selected materials are copyright by John David Stone or Henry Walker and are used with permission.)

Creative Commons License

This work is licensed under a Creative Commons Attribution 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc/3.0/ or send a letter to Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA.