Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Message passing

Name: Anonymous 2013-10-04 15:32

Hello /prog/, I am reading chapter 3 of SICP and the Sussman uses message passing to make objects. Should I always make objects like this, or only for mutable data? Can Scheme be used for OOP with this technique?

Example :

(define (make-ball size)
   (define (change-size new-size)
      (set! size new-size)
      'ok)
   (lambda (message)
      (cond ((eq? message change-size) change-size)
            (else (error "Invalid message -- MAKE-BALL" message)))))

;; make a ball with a size of 10
(define my-ball (make-ball 10))

;; change its size to 20
((my-ball 'change-size) 20)

Name: Anonymous 2013-10-04 17:34

>>3
e-everything?

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List