packages feed

ghc-debug-stub-0.1.0.0: Test.hs

{-# LANGUAGE BangPatterns #-}
{-# LANGUAGE MagicHash #-}

module Main where

import GHC.Debug.Stub
import Control.Concurrent
import System.Mem.StableName
import Foreign.StablePtr
import System.Mem
import qualified Data.Sequence
import qualified Data.HashMap.Strict
import qualified Data.Map as M
--import qualified Data.Map.Strict as M

loop :: IO ()
loop = go 0
  where
   go 5 = pause >> go 11
   go x = print x >> threadDelay 1000000 >> go (x + 1)
   go 100 = return ()

data A = A Int deriving Show

v :: Int
v = 5
{-# NOINLINE v #-}

type TestMap = M.Map String Int


main :: IO ()
main = withGhcDebug $ do
--  print "Enter Name"
--  name <- getLine
--  print "Enter Name"
--  name2 <- getLine
--  let !m = M.insert name (length name) (M.insert name2 (length name2) M.empty)

  --let !y = Data.Sequence.fromList [1..5]
  let !y = [1..1000000]
  print (length y)
  performGC
--  saveClosures [Box y]
  saveClosures [Box y]
  print "start"
  loop
  print y