RE: Exporting class methods
"Simon Marlow" <[email protected]> Tue, 19 Apr 2005 11:50:15 +0100
| Newsgroups | gmane.comp.lang.haskell.nhc.bugs |
|---|---|
| Message-ID | <3429668D0E777A499EE74A7952C382D10379C0B4@EUR-MSG-01.europe.corp.microsoft.com> |
On 15 April 2005 17:26, Malcolm Wallace wrote: > Yes, pretty-much all of these rely on significant extensions to > Haskell'98.=20 Nah, many of these are implementable without changing the compiler: > Ian Lynagh <[email protected]> writes: >=20 >> Control.Exception (bracket_, catch, block, unblock >> catchJust, Exception(IOException) >> catchDyn, throwDynTo, bracket, ioErrors, finally ) Needs exception support, of course >> Control.Concurrent ( ThreadId, myThreadId ) >> Control.Concurrent.MVar (MVar, modifyMVar_, swapMVar, newMVar) Easy (no forkIO) >> System.Posix.IO (fdToHandle) nhc98 must have something like this already. >> System.Posix.Types ( Fd(Fd) ) >> System.IO ( hPutBuf, hGetBuf, hIsTerminalDevice ) -- claims to be >> portable! System.Posix (getFileStatus, setFileMode, unionFileModes, >> ownerExecuteMode, groupExecuteMode, fileMode >> EpochTime, modificationTime, sleep, FileOffset, >> fileSize, setFileTimes, epochTime) All implementable using the FFI only >> Control.Monad.Reader (Reader, runReader, ask, local) >> Control.Monad.Error (instance MonadPlus IO) These have H98 implementations, as far as I'm aware. >> Also, unboxed arrays of Int32, Bool, Int and STUArrays of Int and >> Bool (plus runST, mutable array functions, unsafeFreeze, etc). Ok, MArray and IArray need MPTC, but you don't actually need unboxed arrays (Hugs provides these). Cheers, Simon