testExp :: String -> IO ()
testExp str =
  case parser stmtExp str of
   Right e -> do res <- runTc testEnv testState $ tcExp e
                 print res
   Left errs -> print errs
testExp :: String -> IO ()
testExp str =
  case parser stmtExp str of
   Right e -> do res <- runTc testEnv testState $ tcExp e
                 print res
   Left errs -> print errs
testExp str =
  case parser stmtExp str of
   Right e -> do res <- runTc testEnv testState $ tcExp e
                 print res
   Left errs -> print errs