Functional Problem Solving (CSC 151 2013F) : EBoards

CSC151.02 2013F, Class 51: Objects in Scheme, Continued


Overview

Preliminaries

Admin

Questions

Can I really write a procedure without a lambda?

Sure

(define increment (lambda (x) (+ x 1)))

(define increment (r-s + 1))

But that's really simple. How about something more complicated?

Sure

(define square-all (lambda (lst) (map square lst)))

(define square-all (l-s map square))

But there's no lambda? Where does square-all get its input?

(square-all '(2)) 
=> ((l-s map square) '(2))
=> ((lambda (x) (map square x)) '(2))
=> (map square '(2))
=> (list (square 2))
=> (4)

Can we document even if you say 'but do not document'?

Certainly.

Can we be more accurate than .001 on the cube root problem?

Yes, as long as your code terminates.

StalkerQuiz

Lab

Reflection


Samuel A. Rebelsky, rebelsky@grinnell.edu

Copyright (c) 2007-2013 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.