diff options
-rw-r--r-- | doc/design/assistant/blog/day_57__afk/comment_2_c70d3faccfcebf47deb25e270498cb56._comment | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/doc/design/assistant/blog/day_57__afk/comment_2_c70d3faccfcebf47deb25e270498cb56._comment b/doc/design/assistant/blog/day_57__afk/comment_2_c70d3faccfcebf47deb25e270498cb56._comment new file mode 100644 index 000000000..7539ea2de --- /dev/null +++ b/doc/design/assistant/blog/day_57__afk/comment_2_c70d3faccfcebf47deb25e270498cb56._comment @@ -0,0 +1,18 @@ +[[!comment format=mdwn + username="http://claimid.com/strager" + nickname="strager" + subject="comment 2" + date="2012-08-11T04:55:13Z" + content=""" +In fact, making a dedicated data type or some typeclasses may be more appropriate: + + class Cancelable a where cancel :: a -> IO () + class Pauseable a where pause :: a -> IO () + + -- Alternatively: + + data Transfer = Transfer { cancel :: IO (), pause :: IO () } + + -- Or both! + +"""]] |