Move to haskell 2010
authorAuke Booij <auke@tulcod.com>
Wed, 14 Oct 2015 13:18:01 +0000 (14:18 +0100)
committerAuke Booij <auke@tulcod.com>
Wed, 14 Oct 2015 13:19:00 +0000 (14:19 +0100)
Main.hs
cubicaltt.cabal

diff --git a/Main.hs b/Main.hs
index f36f6baab6470df5f325bba3a8c8ef817860faab..d448264d7de560dc0881b101bdbd7a634ee43b0a 100644 (file)
--- a/Main.hs
+++ b/Main.hs
@@ -128,30 +128,30 @@ loop flags f names tenv = do
           Left  err  -> do outputStrLn ("Resolver failed: " ++ err)
                            loop flags f names tenv
           Right body -> do
-          x <- liftIO $ TC.runInfer tenv body
-          case x of
-            Left err -> do outputStrLn ("Could not type-check: " ++ err)
-                           loop flags f names tenv
-            Right _  -> do
-              start <- liftIO getCurrentTime
-              let e = mod $ E.eval (TC.env tenv) body
-
-              -- Let's not crash if the evaluation raises an error:
-              liftIO $ catch (putStrLn (msg ++ show e))
-                             (\e -> putStrLn ("Exception: " ++
-                                              show (e :: SomeException)))
-              stop <- liftIO getCurrentTime
-              -- Compute time and print nicely
-              let time = diffUTCTime stop start
-                  secs = read (takeWhile (/='.') (init (show time)))
-                  rest = read ('0':dropWhile (/='.') (init (show time)))
-                  mins = secs `quot` 60
-                  sec  = printf "%.3f" (fromInteger (secs `rem` 60) + rest :: Float)
-              when (Time `elem` flags) $
-                 outputStrLn $ "Time: " ++ show mins ++ "m" ++ sec ++ "s"
-              -- Only print in seconds:
-              -- when (Time `elem` flags) $ outputStrLn $ "Time: " ++ show time
-              loop flags f names tenv
+            x <- liftIO $ TC.runInfer tenv body
+            case x of
+              Left err -> do outputStrLn ("Could not type-check: " ++ err)
+                             loop flags f names tenv
+              Right _  -> do
+                start <- liftIO getCurrentTime
+                let e = mod $ E.eval (TC.env tenv) body
+
+                -- Let's not crash if the evaluation raises an error:
+                liftIO $ catch (putStrLn (msg ++ show e))
+                               (\e -> putStrLn ("Exception: " ++
+                                                show (e :: SomeException)))
+                stop <- liftIO getCurrentTime
+                -- Compute time and print nicely
+                let time = diffUTCTime stop start
+                    secs = read (takeWhile (/='.') (init (show time)))
+                    rest = read ('0':dropWhile (/='.') (init (show time)))
+                    mins = secs `quot` 60
+                    sec  = printf "%.3f" (fromInteger (secs `rem` 60) + rest :: Float)
+                when (Time `elem` flags) $
+                   outputStrLn $ "Time: " ++ show mins ++ "m" ++ sec ++ "s"
+                -- Only print in seconds:
+                -- when (Time `elem` flags) $ outputStrLn $ "Time: " ++ show time
+                loop flags f names tenv
 
 -- (not ok,loaded,already loaded defs) -> to load ->
 --   (new not ok, new loaded, new defs)
index fee92b7798c1649689878a921d6e6ac814e2c35c..8452d5de8ce46a1dfbe1d7331232bb7049208d7a 100644 (file)
@@ -50,4 +50,4 @@ executable cubical
     array >=0.5 && <0.6
   -- hs-source-dirs:
   build-tools:         alex, happy, bnfc
-  default-language:    Haskell98
+  default-language:    Haskell2010