aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2021-04-07 20:54:08 +0200
committerThomas White <taw@physics.org>2021-04-07 20:54:08 +0200
commit376f1322adf585617cf173ef34832ed910b6b49c (patch)
tree5fa1e642abd918ff8b24e4ecbd656b790100a230
parentdbab3e44d49eb6e478c488d1f767dc80bd5c3ec1 (diff)
fixup initial abstraction
-rw-r--r--guile/starlet/colours.scm14
1 files changed, 13 insertions, 1 deletions
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 <colour>) port)
+(define cyan car)
+(define magenta cadr)
+(define yellow caddr)
+
+(define-method (display (col <colour>) port)
(format port "#<<colour> ~a ~a>"
(colour-type col)
(colour-value col)))
+(define-method (write (col <colour>) 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 <colour>
#:type 'cmy