CS200: Notes 15 March 2004

University of Virginia, Department of Computer Science
CS200: Computer Science, Spring 2004

Notes: Monday 15 March 2004

(define (make-ocounter)
 ((lambda (count)
 (lambda (message)
 (if (eq? message 'reset)
	 (set! count 0)
	 (if (eq? message 'next) 
	 (set! count (+ 1 count))
	 (if (eq? message 'how-many)
		 count)))))
 0))
(define (make-ocounter)
 (let ((count 0))
 (lambda (message)
 (if (eq? message 'reset) 
	 (set! count 0)
	 (if (eq? message 'next) 
	 (set! count (+ 1 count))
	 (if (eq? message 'how-many)
		 count))))))
What is an object?



How to Smalltalk-ers add 2 + 3?



Why is it useful to package state and procedures together?





Who was the first object-oriented programmer?



Recommended Reading: Howard Rheingold, Tools for Thought, Chapter 11: The Birth of the Fantasy Amplifier.

TerraServer
1 Terabyte = 240 bytes (about 1 Trillion bytes)

http://terraserver.microsoft.com/ — 3.3 Terabytes of aerial images covering entire United States
UVa Image

The best way to predict the future is to invent it. — Alan Kay
If you have an idea, and its not a good idea, take a nap instead of implementing it. — Alan Kay

cs200-staff@cs.virginia.edu
Using these Materials

AltStyle によって変換されたページ (->オリジナル) /