diff --git a/c0parser.cabal b/c0parser.cabal
--- a/c0parser.cabal
+++ b/c0parser.cabal
@@ -1,8 +1,8 @@
 Name:                c0parser
-Version:             0.1.0.1
+Version:             0.2
 Synopsis:            Simple C0 Parser
 Description:         The package contains a parser for C0 programs.
-	             The C0-language is introduced in the basic programming course \"Algorithmisches Denken und imperative Programmierung\" (WS 2011/12 and later) at the University of Bonn.
+	             The C0-language is introduced in the basic programming course \"Algorithmisches Denken und imperative Programmierung\" (WS 2012/13 and later) at the University of Bonn.
 License:             GPL
 Author:              Daniel Seidel
 Maintainer:          ds@iai.uni-bonn.de
diff --git a/src/Language/C0/Parser/C0Parser.hs b/src/Language/C0/Parser/C0Parser.hs
--- a/src/Language/C0/Parser/C0Parser.hs
+++ b/src/Language/C0/Parser/C0Parser.hs
@@ -17,7 +17,7 @@
            , "default",  "do",     "double",   "else",   "enum",     "extern"
            , "float",    "for",    "goto",     "if",     "int",      "long"
            , "register", "return", "short",    "signed", "sizeof",   "static"
-           , "struct",   "switch", "typdef",   "union",  "unsigned", "void"
+           , "struct",   "switch", "typedef",  "union",  "unsigned", "void"
            , "volatile", "while"]
 
 yesNo :: String -> Bool
@@ -238,21 +238,14 @@
 pSimpleExpression :: CharParser [String] SimpleExpression
 pSimpleExpression = (do
   wsOrCmts
-  mSign <-  trace "Entered simple expression ... \n" (pPlus <|> pMinus <|> return Nothing)
   (State s _ u) <- getParserState
-  term <- trace ("DEBUG: try to read term at parser state:\n" ++ s ++ "\nwith user state: " ++ show u ++ " and sign = " ++ show mSign ++ "\n") pTerm
+  term <- trace ("DEBUG: try to read term at parser state:\n" ++ s ++ "\nwith user state: " ++ show u ++ "\n") pTerm
   terms <- trace "DEBUG: try to read more terms\n" pMoreTerms
-  return $ Simple mSign term terms) <|> 
+  return $ Simple term terms) <|> 
   (do
     (State s _ u) <- getParserState
     trace ("DEBUG: Simple Expression failed at ParserState:\n" ++ show s ++ "\n") fail "failed")
   
-pPlus :: CharParser [String] (Maybe Sign)
-pPlus = wsOrCmts >> char '+' >> return (Just Plus)
-
-pMinus :: CharParser [String] (Maybe Sign)
-pMinus = wsOrCmts >> char '-' >> return (Just Minus)
-
 pTerm :: CharParser [String] Term
 pTerm = (do
   trace "entered pTerm\n" (return ())
@@ -260,7 +253,8 @@
   fac <- trace ("DEBUG: try to read factor at ParserState:\n" ++ s ++ "\n") pFactor
   facs <- trace ("DEBUG: try to read more factors ...") pMoreFactors
   trace ("read Term " ++ show (T fac facs) ++ "\n") return ()
-  (return $ T fac facs)) <|> trace "DEBUG: pTerm failed" (return (T (FI "x") []))
+  (return $ T fac facs))
+         <|> trace "DEBUG: pTerm failed" fail "failed"
 
 pMoreTerms :: CharParser [String] [(OpAddSub, Term)]
 pMoreTerms = many $ try (pOpAddSub >>= (\op->pTerm >>= (\t -> return (op,t))))
diff --git a/src/Language/C0/Types/C0Types.hs b/src/Language/C0/Types/C0Types.hs
--- a/src/Language/C0/Types/C0Types.hs
+++ b/src/Language/C0/Types/C0Types.hs
@@ -16,10 +16,9 @@
 data    WhileStatement = W BoolExpression Statement deriving (Eq, Show)
 data    BoolExpression = Bool SimpleExpression Relation SimpleExpression deriving (Eq, Show)
 data    Relation = EQ | NE | LT | GT | LE | GE deriving (Eq, Show)
-data    SimpleExpression = Simple (Maybe Sign) Term [(OpAddSub, Term)] deriving (Eq, Show)
+data    SimpleExpression = Simple Term [(OpAddSub, Term)] deriving (Eq, Show)
 data    OpAddSub = Add | Sub deriving (Eq, Show)
 data    OpMulDivMod = Mul | Div | Mod deriving (Eq, Show)
-data    Sign    = Plus | Minus deriving (Eq, Show)
 data    Term    = T Factor [(OpMulDivMod, Factor)] deriving (Eq, Show)
 data    Factor  = FI Ident 
                 | FN Number 
