re: purescript question
@AgathaSorceress ...I was sure there was such a thing but apparently not
you could probably write such a thing yourself using instance chains
class MyShow a where
myShow :: a -> String
instance stringShow :: MyShow String where
myShow = identity
else instance otherShow :: Show a => MyShow a
myShow = show