Commit 1b3b9664 authored by andy's avatar andy

[project @ 1999-11-01 02:04:31 by andy]

Changing to use the new IO primitives.
Addr is no longer a synonym of Int.
parent 7568c81c
......@@ -738,12 +738,14 @@ readLn = do l <- getLine
#else
\begin{code}
import Ix(Ix)
unimp :: String -> a
unimp s = error ("function not implemented: " ++ s)
type FILE_STAR = Int
type Ptr = Int
nULL = 0 :: Int
type FILE_STAR = Addr
type Ptr = Addr
nULL = nullAddr
data Handle
= Handle { name :: FilePath,
......@@ -760,7 +762,7 @@ instance Eq Handle where
h1 == h2 = file h1 == file h2
instance Show Handle where
showsPrec _ h = showString ("<<handle " ++ name h ++ "=" ++ show (file h) ++ ">>")
showsPrec _ h = showString ("<<handle " ++ name h ++ ">>")
data HandlePosn
= HandlePosn
......@@ -878,7 +880,7 @@ hPutStr h s
write_all f []
= return ()
write_all f (c:cs)
= nh_write f (primCharToInt c) >>
= nh_write f c >>
write_all f cs
hPutChar :: Handle -> Char -> IO ()
......@@ -946,8 +948,7 @@ bracket_ before after m = do
case rs of
Right r -> return r
Left e -> ioError e
-- TODO: Hugs/slurbFile
-- TODO: Hugs/slurpFile
slurpFile = unimp "slurpFile"
\end{code}
#endif
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment