Hoed-0.3.0: tests/Generic/t1.hs
{-# LANGUAGE DeriveGeneric #-}
import Debug.Hoed.Pure
data D = D D | C Int
deriving (Show,Generic)
instance Observable D
f :: D -> Int
f = observe "f" f'
f' (C x) = x
f' (D d) = f d
main = logO "r0" $ print (f (D (C 3)))