31 lines
429 B
Plaintext
31 lines
429 B
Plaintext
(class +Point)
|
|
# x y
|
|
|
|
(dm T (X Y)
|
|
(=: x (or X 0))
|
|
(=: y (or Y 0)) )
|
|
|
|
(dm print> ()
|
|
(prinl "Point " (: x) "," (: y)) )
|
|
|
|
(class +Circle +Point)
|
|
# r
|
|
|
|
(dm T (X Y R)
|
|
(super X Y)
|
|
(=: r (or R 0)) )
|
|
|
|
(dm print> ()
|
|
(prinl "Circle " (: x) "," (: y) "," (: r)) )
|
|
|
|
(setq
|
|
P (new '(+Point) 3 4)
|
|
C (new '(+Circle) 10 10 5) )
|
|
|
|
(print> P)
|
|
(print> C)
|
|
|
|
(out "objects.dat"
|
|
(pr (val P) (getl P))
|
|
(pr (val C) (getl C)) )
|