data Apple = Apple {
    color    :: String
  , diameter :: Int
  , weight   :: Double
}
instance Eq Apple where
    (Apple c d w) == (Apple c' d' w') = 
        c == c' && d == d' && w == w'
main = do
    let apple1 = Apple "red" 1 2.5
    let apple2 = Apple "green" 2 3.2
    
    putStr "apple1 == apple2 : "
    print $ apple1 == apple2
    
    let apple3 = Apple "red" 1 2.5
    putStr "apple1 == apple3 : "
    print $ apple1 == apple3