-module GHCmain ( mainPrimIO ) where
+module GHCmain ( mainIO ) where
-import GlaExts
import PrelBase
data CList = CNil | CCons Int# CList
clen CNil = 0#
clen (CCons _ cl) = 1# +# (clen cl)
-mainPrimIO = case (clen list4) of
+mainIO = case (clen list4) of
len4 ->
case (len4 +# len4) of
8# -> finish 65# -- 'A'
where
list4 = mk 4#
-finish :: Int# -> PrimIO ()
-finish n = _ccall_ putchar (C# (chr# n)) `seqPrimIO` returnPrimIO ()
+finish :: Int# -> IO ()
+finish n = _ccall_ putchar (C# (chr# n)) >> return ()
--
import IO
import System
-import IOBase (trace)
---import Trace ToDo: get this via GlaExts -- SOF
+import IOExts (trace)
main = do
prog <- getProgName
--
import IO
import System
-import IOBase (trace)
---import Trace ToDo: get this via GlaExts -- SOF
+import IOExts (trace)
main = do
prog <- getProgName
--
module Main ( main ) where
-import PrelBase --ghc1.3
-import GlaExts
+import PrelBase
import ST
+import IOExts
+import MutableArray
+import ByteArray
+import Addr
-import Ratio -- 1.3
-import Array -- 1.3
+import Ratio
+import Array
main = putStr
(test_chars ++ "\n" ++
test_chars
= let str = reverse "Now is the time for all good men to come to...\n"
in
- unsafePerformPrimIO (
+ unsafePerformIO (
_ccall_ fprintf (``stdout''::Addr) "%d %s\n" 93 str >>
- returnPrimIO ""
+ return ""
)
-- Arr# Int# -------------------------------------------
fill_in arr_in# first# last#
= if (first# ># last#)
- then returnST ()
+ then return ()
else writeIntArray arr_in# (I# first#) (I# (first# *# first#)) >>
fill_in arr_in# (first# +# 1#) last#
fill_in arr_in# first# last#
= if (first# ># last#)
- then returnST ()
+ then return ()
else writeAddrArray arr_in# (I# first#)
(A# (int2Addr# (first# *# first#))) >>
fill_in arr_in# (first# +# 1#) last#
fill_in arr_in# first# last#
= if (first# ># last#)
- then returnST ()
+ then return ()
{- else let e = ((fromInt (I# first#)) * pi)
in trace (show e) $ writeFloatArray arr_in# (I# first#) e >>
fill_in arr_in# (first# +# 1#) last#
fill_in arr_in# first# last#
= if (first# ># last#)
- then returnST ()
+ then return ()
else writeDoubleArray arr_in# (I# first#) ((fromInt (I# first#)) * pi) >>
fill_in arr_in# (first# +# 1#) last#
fill_in arr_in# first last
= if (first > last)
- then returnST ()
+ then return ()
else writeArray arr_in# first (fromInt (first * first)) >>
fill_in arr_in# (first + 1) last
-- In 0.19, we lost the ability to do ccalls with more than 6 arguments
-- on the Sparc. Just to make sure it never happens again...
-import GlaExts
main =
_ccall_ printf "Testing %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d\n"
(11::Int) (12::Int) (13::Int) (14::Int) (15::Int) (16::Int) (17::Int) (18::Int)
(21::Int) (22::Int) (23::Int) (24::Int) (25::Int) (26::Int) (27::Int) (28::Int)
(31::Int) (32::Int) (33::Int) (34::Int) (35::Int) (36::Int) (37::Int) (38::Int)
- `thenIO_Prim` \ _ ->
+ >>
return ()
module Main (main) where
---import PreludeGlaST
-import GlaExts
+import IOExts ( unsafePerformIO )
po :: Double -> Double
po rd = 0.5 + 0.5 * erf ((rd / 1.04) / sqrt 2)
where
erf :: Double -> Double
- erf x = unsafePerformPrimIO (_ccall_ erf x)
+ erf x = unsafePerformIO (_ccall_ erf x)
main = putStr (shows (po 2.0) "\n")
module Main ( main ) where
import PrelBase --ghc1.3
-import GlaExts
+import IOExts
+import ByteArray
+import MutableArray
import ST
import Ratio -- 1.3
fill_in arr_in# first# last#
= if (first# ># last#)
- then returnST ()
+ then return ()
else writeDoubleArray arr_in# (I# first#) ((fromInt (I# first#)) * pi) >>
fill_in arr_in# (first# +# 1#) last#
--!!! when converting CoreSyn.App)
module Main where
-import GlaExts
-
-getData :: String -> PrimIO ()
+getData :: String -> IO ()
getData filename = case leng filename of {0 -> return ()}
leng :: String -> Int
leng [] = 0 --case ls of {[] -> 0 ; (_:xs) -> 1 + leng xs }
f xs ys = f xs ys
main =
- primIOToIO (
- (return ()) >>= \ _ ->
- case f [] [] of { [] -> getData [] })
+ return () >>= \ _ ->
+ case f [] [] of { [] -> getData [] }