From 82b4d838ee16fea80bfc0da630603273f7cba6c2 Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Tue, 2 Jan 2018 22:28:13 +0100 Subject: Start with assignment 13 --- assignment-13/Util.dcl | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 assignment-13/Util.dcl (limited to 'assignment-13/Util.dcl') diff --git a/assignment-13/Util.dcl b/assignment-13/Util.dcl new file mode 100644 index 0000000..11ad93e --- /dev/null +++ b/assignment-13/Util.dcl @@ -0,0 +1,19 @@ +definition module Util + +:: PrState = + { indent :: Int + , output :: [String] + } + +class print a :: a -> PrState -> PrState + +printToString :: a -> String | print a + +instance print String +instance print Int + +nl :: PrState -> PrState +indent :: PrState -> PrState +unindent :: PrState -> PrState + +prsperse :: a [b] -> PrState -> PrState | print a & print b -- cgit v1.2.3