diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Nov 6 2015
+Release 0.2.1
+
+Change base dependency bounds
+
 May 28 2014
 Release 0.2
 Report filename given an error.
diff --git a/HListPP.cabal b/HListPP.cabal
--- a/HListPP.cabal
+++ b/HListPP.cabal
@@ -1,5 +1,5 @@
 name:                HListPP
-version:             0.2
+version:             0.2.1
 synopsis:            A preprocessor for HList labelable labels
 description:         A preprocessor that replaces @`longDescriptiveName@ with
                     .
@@ -44,13 +44,14 @@
 cabal-version:       >=1.10
 extra-source-files:  ChangeLog
 
-library
-  default-language: Haskell2010
+source-repository head
+  type:     darcs
+  location: http://code.haskell.org/~aavogt/HListPP
 
 executable HListPP
   main-is:             HListPP.hs
   other-extensions:    QuasiQuotes, ViewPatterns
-  build-depends:       base >=4.6 && <4.8,
+  build-depends:       base >=4.6 && <4.9,
                        applicative-quoters >=0.1 && <0.2,
                        regex-applicative >=0.3 && <0.4
   default-language:    Haskell2010
diff --git a/HListPP.hs b/HListPP.hs
--- a/HListPP.hs
+++ b/HListPP.hs
@@ -14,15 +14,22 @@
 -- "ModuleName."
 modNameDot = [ado|
     m <- psym isUpper
-    odName <- many (psym isAlpha)
+    odName <- many (psym isAlpha <|> psym isDigit)
     dot <- sym '.'
     m:odName ++ [dot] |]
 
 -- "M.Od.Ule.Name.something"
 qualIdent = [ado|
     modNames <- many modNameDot
-    end <- some (psym isAlpha)
+    end <- identSym <|> identAlpha
     concat (modNames ++ [end]) |]
+
+identSym = some (psym isSymbol)
+
+identAlpha  = [ado|
+  i <- psym isAlpha
+  dent <- many (psym isAlpha <|> psym isDigit <|> sym '\'')
+  i:dent |]
 
 takeQual x = case findLongestPrefix qualIdent x of
     Just (a , '`' : rest) -> ('`' : a ++ "`", rest) -- `infix`
