BeanShell is a Java scripting language, invented by Patrick Niemeyer. It runs in the Java Runtime Environment (JRE) and utilizes Java’s own syntax, in addition to scripting commands and syntax. While BeanShell allows its users to define functions that can be called from within a script, its underpinning philosophy has been to not pollute its syntax with too many extensions and “syntactic sugar”, thereby ensuring that code written for a Java compiler can almost always be executed interpretively by BeanShell without any changes and, almost just as much, vice versa. This makes BeanShell a popular testing and debugging tool.
BeanShell is an open source project and has been incorporated into many applications, such as OpenOffice.org, Apache Ant, BEA WebLogic Application Server, jEdit, and many others. BeanShell provides an easy to integrate API. It can also be run in command-line mode or within its own graphical environment. The Java Community Process approved JSR 274, which means BeanShell will eventually become part of the Java platform.