;eerst een definitie van de interface ;een constructor make-segment ; (define (make-segment start end) ... ;twee selectors startpoint en endpoint ; (define (startpoint segment) ... ; (define (endpoint segment) ... ;dan nu de definitie van een punt ;de constructor ; (define (make-point x y) ... ;de selectors ; (define (abcis point)... ; (define (ordinaat point)... ;hieronder staat dan de definite (define (make-point x y) (cons x y)) (define (abcis point) (car point)) (define (ordinaat point) (cdr point)) (define (make-segment start end) (cons start end)) (define (startpoint seg) (car seg)) (define (endpoint seg) (cdr seg)) ;het midden van een segment is (x1+(x2-x1)/2,y1+(y2-y1)/2 ;eerst definieren van een hulpprocedure (define (mid getal1 getal2) (+ (getal1 (/ (- getal2 getal1) 2)))) (define (midpoint seg) (make-point (mid (abcis (startpoint seg)) (abcis (endpoint seg))) (mid (ordinaat (startpoint seg)) (ordinaat (endpoint seg)))))