{-# GLOBALOPTIONS -package mtl #-}
-- illustrates the use of static options in pragmas

import System.IO.Unsafe
import System.IO
import System.Process

resource = unsafe { field = date }

-- illustrates the use of the devil's work
date :: String
date = unsafePerformIO $ do
#if !defined(CYGWIN) || !defined(__MINGW32__)
            (_,outh,_,proc) <- runInteractiveProcess "date" [] Nothing Nothing		
#else
            (_,outh,_,proc) <- runInteractiveProcess "@PREFIX@/../../bin/date" [] Nothing Nothing		
#endif
    	    waitForProcess proc
            s <- hGetContents outh
            return s