A cross-platform (or platform independent) programming language, software application or hardware device works on more than one system platform (e.g. Unix, Windows, Macintosh). Examples of cross-platform languages are C, C++, Java, JavaScript, Perl, Python, REALbasic programming language, and the Revolution programming language. Some languages are more platform independent than others however; for example, a program written in C or C++ may or may not be portable to another operating system depending on which feature sets it uses. A program written in C++ for Windows will without a doubt fail to compile on a Unix system. Conversely, Java was designed from the ground up to work on any platform that has a Java runtime without changing the code.
There are also cross-platform extensions and middleware for many programming languages that enable programmers to compile/run the same source code with minimal fixes on different platforms. An example is wxWidgets.