From 376f1322adf585617cf173ef34832ed910b6b49c Mon Sep 17 00:00:00 2001 From: Thomas White Date: Wed, 7 Apr 2021 20:54:08 +0200 Subject: fixup initial abstraction --- guile/starlet/colours.scm | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/guile/starlet/colours.scm b/guile/starlet/colours.scm index d390c5d..5ed4f81 100644 --- a/guile/starlet/colours.scm +++ b/guile/starlet/colours.scm @@ -19,12 +19,24 @@ #:getter colour-value)) -(define-method (write (col ) port) +(define cyan car) +(define magenta cadr) +(define yellow caddr) + +(define-method (display (col ) port) (format port "#< ~a ~a>" (colour-type col) (colour-value col))) +(define-method (write (col ) port) + (let ((cmy (colour-as-cmy col))) + (format port "(make-colour-cmy ~a ~a ~a)" + (cyan cmy) + (magenta cmy) + (yellow cmy)))) + + (define (make-colour-cmy c m y) (make #:type 'cmy -- cgit v1.2.3