Functional Problem Solving (CSC 151 2014F) : Outlines
Primary: [Front Door] [Schedule] - [Academic Honesty] [Disabilities] [Email] - [FAQ] [Teaching & Learning] [Grading] [Rubric] - [Calendar]
Current: [Assignment] [EBoard] [Lab] [Outline] [Reading]
Sections: [Assignments] [EBoards] [Examples] [Handouts] [Labs] [Outlines] [Readings]
Reference: [Setup] [VM] [Errors] - [Functions A-Z] [Functions By Topic] - [Racket] [Scheme Report (R5RS)] [R6RS] [TSPL4]
Related Courses: [Davis (2013F)] [Rebelsky (2014S)] [Weinman (2014F)]
Misc: [Submit Questions] - [SamR] [Glimmer Labs] [CS@Grinnell] [Grinnell] - [Issue Tracker (Course)]
Held: Wednesday, 1 October 2014
Back to Outline 19 - Conditionals. On to Outline 21 - Naming Local Values.
Summary
We revisit procedures in Scheme. We consider a variety of techniques for writing anonymous procedures, procedures without names.
Related Pages
Overview
Administrivia
Reminder: You may bring a sheet of notes to Friday's quiz.
list
, make-list
, and iota
)map
image-select-rectangle!
)compose
, o
, l-s
, r-s
(the latter two from today's class)Traditionally, we write something like
(define *name-of-procedure*
(lambda (*parameters*)
*body*))
When applying a procedure, we effectively substitute the arguments we call the procedure on for the parameters in the body, and then evaluate the body.
map
((lambda (x y) (* (+ x y) (- x y))) 2 3)
(map (lambda (x) (* 5 (+ 1 x))) (iota 10))