diff options
author | Paul Oliver <contact@pauloliver.dev> | 2025-01-03 11:01:20 -0800 |
---|---|---|
committer | Paul Oliver <contact@pauloliver.dev> | 2025-01-05 09:59:10 -0800 |
commit | 6a0d7f5c434c3564d0119befb6799fd77581050a (patch) | |
tree | f20bc998290211d2a895523417ad32e297b31af0 /ch07_07.1-ii.hs |
Diffstat (limited to 'ch07_07.1-ii.hs')
-rw-r--r-- | ch07_07.1-ii.hs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/ch07_07.1-ii.hs b/ch07_07.1-ii.hs new file mode 100644 index 0000000..91abc8d --- /dev/null +++ b/ch07_07.1-ii.hs @@ -0,0 +1,14 @@ +-- Exercise 7.1-ii +-- What happens to this instance if you remove the `Show t =>` constraint from +-- `HasShow`. + +-- Removing `Show t =>` below makes GHC angry: +-- +-- • No instance for ‘Show t’ arising from a use of ‘show’ +-- Possible fix: +-- add (Show t) to the context of the data constructor ‘HasShow’ +data HasShow where + HasShow :: Show t => t -> HasShow + +instance Show HasShow where + show (HasShow t) = "HasShow " <> show t |