If you're writing a traditional recursive descent parser, it doesn't make much difference (IMHO). Any vaguely modern programming language will work fine.
If you want to use parser combinators, then something with basic support for functional programming (particularly closures and and a lightweight lambda syntax).
If you want to use parser combinators, then something with basic support for functional programming (particularly closures and and a lightweight lambda syntax).