aboutsummaryrefslogtreecommitdiff
path: root/data/writer.scm
diff options
context:
space:
mode:
Diffstat (limited to 'data/writer.scm')
-rw-r--r--data/writer.scm9
1 files changed, 8 insertions, 1 deletions
diff --git a/data/writer.scm b/data/writer.scm
index 462d391..93f3798 100644
--- a/data/writer.scm
+++ b/data/writer.scm
@@ -21,7 +21,14 @@
(match this (($ <writer> value monoid)
(match (proc value)
(($ <writer> nval ncontext)
- (writer nval { monoid <> ", " <> ncontext }))))))
+ (writer nval { monoid <> ncontext }))))))
+
+(define-method (>> (a <writer>)
+ (b <writer>))
+ (match a (($ <writer> _ monoid-a)
+ (match b (($ <writer> val monoid-b)
+ (writer val (<> monoid-a monoid-b))
+ )))))
(define (return-writer val)
(writer val ""))