From 0d178f087b6a0a5c761df7765d15544dcff948a1 Mon Sep 17 00:00:00 2001 From: "https://www.joachim-breitner.de/" Date: Sun, 7 May 2017 03:20:39 +0000 Subject: Added a comment --- ...ent_3_6338e14886f146eb5d2f9c9316e1f7de._comment | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 doc/protocol/comment_3_6338e14886f146eb5d2f9c9316e1f7de._comment diff --git a/doc/protocol/comment_3_6338e14886f146eb5d2f9c9316e1f7de._comment b/doc/protocol/comment_3_6338e14886f146eb5d2f9c9316e1f7de._comment new file mode 100644 index 0000000..657a20a --- /dev/null +++ b/doc/protocol/comment_3_6338e14886f146eb5d2f9c9316e1f7de._comment @@ -0,0 +1,22 @@ +[[!comment format=mdwn + username="https://www.joachim-breitner.de/" + nickname="nomeata" + avatar="http://cdn.libravatar.org/avatar/a2112893817513537c6a2c228c04c138a2f68bba57121ab7f267de58fc5171d7" + subject="comment 3" + date="2017-05-07T03:20:38Z" + content=""" +Still not good, I think, as the instance `Hashable Hash` has `hash = id`, so + + hash Nothing + = hash () + = id (hash ()) + = hash (Just (hash ()) + + and we have a collision at type `Maybe Hash`. + +What would work is to do the same that `Hashable []` does, i.e. has the hash again: + + hash (Just v) = hash (val (hashValue v)) + hash Nothing = hash (mempty :: B.ByteString) + +"""]] -- cgit v1.2.3