- (Nothing, w) = (Nothing, (), w)
- (Just cs, w) = (Just $ map toPrefix cs, (), w)
+ (Nothing, w) = (Nothing, io, w)
+ (Just cs, w)
+ # msgs = map toPrefix cs
+// #! (io, w) = foldr (log strf " (s): ") (io, w) msgs
+ = (Just msgs, io, w)
+
+ log :: String String IRCMessage (!*File, !*World) -> (!*File, !*World)
+ log strf pref m (io, w)
+ #! (t, w) = localTime w
+ = (io <<< strfTime strf t <<< pref <<< toString m <<< "\n", w)