"Scripting language" has two apparently different, but in fact similar meanings.
In a traditional sense, scripting languages are designed to automate frequently used tasks that usually involve calling or passing commands to external programs.
Many complex application programs allow users to implement custom functions by providing them with built-in languages. Those which are of interpretive type, are often called scripting languages.
More recently many of these applications have chosen to "build in" traditional scripting languages, such as Perl or Visual Basic, but there are quite a few "native" scripting languages still in use.
Many scripting languages are compiled to bytecode and then this (usually) platform independent bytecode is run through a virtual machine (compare to Java).
Ch (Embeddable C/C++ interpreter)
PHP (intended for Web servers)
Many shell command languages such as the UNIX shell or DCL on VMS have powerful scripting capabilities.