--- Pugs/Parser/Literal.hs	2006-08-15 02:11:40.000000000 +0800
+++ Pugs/Parser/Literal.hs	2006-08-15 02:35:46.000000000 +0800
@@ -9,7 +9,7 @@
 import Pugs.Parser.Types
 import Pugs.Parser.Operator
 
-ruleYada = do
+ruleYada = try $ do
   sym <- do
       string "..."
       <|>
@@ -18,6 +18,7 @@
       string "!!!"
   return $ (App (Var (doYada sym)) Nothing [(Val (VStr (sym ++ " - not yet implemented")))])
 
+ruleTwigil :: RuleParser String
 ruleTwigil = option "" $ do
   string "^"
   <|>
@@ -70,7 +71,7 @@
 
 ruleDot = do
   do
-    do
+    try $ do
       string "."
       notFollowedBy $ (string ".") >> return ' '
     <|>
@@ -83,7 +84,7 @@
     string "?"
   return ()
 
-ruleLongDot = do
+ruleLongDot = try $ do
   string "\\"
   notFollowedBy $ (string "(") >> return ' '
   perl6WhiteSpace
