With LuaTeX (the modern version of TeX), such catcode trickery is not needed. LuaTeX provides a hook into the file reader, and you can simply change transform the input as you read it. For an example in ConTeXt, see this answer on Tex.sx: http://tex.stackexchange.com/a/4174/323