Java has several methods of running programs written in other languages. You can invoke a compiled program or executable script using Runtime.exec( ) , as I'll describe in Recipe 26.1. Or you can drop down to C level with Java's " native code" mechanism and call compiled functions written in C/C++. From there, you can call to functions written in just about any language. Not to mention that you can contact programs written in any language over a socket (see Chapter 17), with HTTP services (see Chapter 18), or with Java clients in RMI or CORBA clients in a variety of languages (see Chapter 22).
There is an element of system dependency here, of course. You can only run Windows applications under Windows and Unix applications under Unix. So some of the recipes in this chapter aren't portable, although in a few cases I try to make them at least run on Windows or Unix.