20 lines
408 B
Racket
20 lines
408 B
Racket
#lang scheme
|
|
;; data definitions
|
|
|
|
(define id? symbol?)
|
|
(define id-equal? eq?)
|
|
(define-struct basic-customer (id name address) #:mutable)
|
|
|
|
;; interface
|
|
(provide/contract
|
|
[id? (-> any/c boolean?)]
|
|
[id-equal? (-> id? id? boolean?)]
|
|
[struct basic-customer ((id id?)
|
|
(name string?)
|
|
(address string?))])
|
|
;; end of interface
|
|
|
|
|
|
|
|
|