diff --git a/core-haskell.cabal b/core-haskell.cabal
--- a/core-haskell.cabal
+++ b/core-haskell.cabal
@@ -1,5 +1,5 @@
 name:                core-haskell
-version:             0.6.3
+version:             0.6.4
 build-type:          Simple
 synopsis:            A subset of Haskell using in UCC for teaching purpose
 description:         A subset of Haskell using in UCC for teaching purpose.
diff --git a/core-haskell.hs b/core-haskell.hs
--- a/core-haskell.hs
+++ b/core-haskell.hs
@@ -5,6 +5,7 @@
 import SyntaxChecker
 import System.Console.Haskeline
 import System.Environment (getArgs)
+import Control.Monad
 
 main :: IO ()
 main = do
@@ -15,8 +16,7 @@
         _  -> do
                 m <- getModule fPath
                 let ns = getNames m
-                if isCoreModule ns m then run ns fPath
-                else error "This is not a vaild Core Haskell Source file."
+                when (isCoreModule ns m) (run ns fPath)
 
 run :: [String] -> String -> IO ()
 run ns fPath = runInputT defaultSettings (loop fPath) where
