- ByteStrings in Haskell: should I use Put or Builder?
- type Put = PutM ()
- instance (Binary a) => Binary (Colour a) where
- put (Colour r g b) = put r >> put g >> put b
- get = Colour <$> get <*> get <*> get
- putThing :: Thing -> Put
- putThing (Thing thing1 thing2) = do
- putThing1 thing1
- putThing2 thing2
- putThing :: Thing -> Builder
- putThing (Thing thing1 thing2) = mconcat [
- putThing thing1,
- putThing thing2]