Functional Problem Solving (CSC 151 2016S) : Outlines
Primary: [Front Door] [Schedule] - [Academic Honesty] [Disabilities] [Email] - [FAQ] [Teaching & Learning] [Grading] [Taking Notes] [Rubric]
Current: [Assignment] [EBoard] [Lab] [Outline] [Reading]
Sections: [Assignments] [EBoards] [Labs] [Outlines] [Readings] - [Examples] [Handouts]
Reference: [Setup] [Remote] [VM] [Errors] - [Functions A-Z] [Functions By Topic] - [Racket] [Scheme Report (R5RS)] [R6RS] [TSPL4]
Related Courses: [Curtsinger (2016S)] [Davis (2013F)] [Rebelsky (2015F)] [Weinman (2014F)]
Misc: [SamR] [Glimmer Labs] [CS@Grinnell] [Grinnell] - [Issue Tracker (Course)]
Held: Wednesday, 24 February 2016
Back to Outline 18 - Conditionals. On to Outline 20 - Collage - Copy and Paste.
Summary
We consider why and how you name values within a procedure. We also consider why and how you limit access to those names to within the procedure.
Related Pages
Overview
let.let*.Administrivia
letlet.let has the form
(let ((name_1 exp_1) (name_2 exp_2) ... (name_n exp_n)) body)
let has the meaning:
You can use let in a simple expression:
(define values (list 1 4 2 4 1 5 9)) (let ((largest (max values)) (smallest (min values))) (/ (+ largest smallest) 2))
More frequently, we use let within a procedure.
let*let* rather than let.let* has the form
let* has the meaning: