The technical capabilities of most of the popular modern scripting languages have converged remarkably, even over the three years that we've been writing Regular Expressions . You can code in procedural, object-oriented, or functional styles. You can expect to be able to run your scripts on Mac OS, Unix, or Windows. You can manage other processes, and script Java and COM objects. You have limited access to hardware such as serial ports, but you can extend built-in capabilities with C or other languages.
Internationalization is possible and often practical.
You can freely reuse any of a staggering number of modules other programmers have written. Therefore, our first answer is to use what feels comfortable to you . If Python's use of white space makes your skin crawl, learn Ruby instead. If you want to get along with your coworkers without having to explain your Tcl or Forth mentality, you might find them ready to accept Perl or Pike. You'll be able to create roughly the same functionality no matter which language you use.