Skip to content

Instantly share code, notes, and snippets.

@sw17ch
Created February 23, 2010 21:55
Show Gist options
  • Save sw17ch/312761 to your computer and use it in GitHub Desktop.
Save sw17ch/312761 to your computer and use it in GitHub Desktop.
module ReadBase where
import Numeric
import Maybe
readBase :: Integer -> String -> [(Integer,String)]
readBase base input = readInt base isValid toValue input
where chars = ['0'..'9'] ++ ['A'..'Z'] ++ ['a'..'z']
vals = zip chars [0..(fromIntegral base)]
isValid = flip elem chars
toValue = fromJust . (flip lookup vals)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment