fork download
  1. {-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, CPP #-}
  2. import Data.Time
  3.  
  4. #define as ::
  5.  
  6. class Cast a c where
  7. cast :: a -> c
  8.  
  9. instance Show a => Cast a [Char] where
  10. cast = show
  11.  
  12. instance Cast UTCTime Day where
  13. cast = utctDay
  14.  
  15. main = do
  16. now <- getCurrentTime
  17. print (cast now as String)
  18. print (cast now as Day)
  19. print (cast (cast now as Day) as String)
Success #stdin #stdout 0s 6312KB
stdin
Standard input is empty
stdout
"2014-11-20 18:25:28.693383 UTC"
2014-11-20
"2014-11-20"