Scripting Language

Why Trust Techopedia

What Does Scripting Language Mean?

A scripting language is a language that uses a sophisticated method to bring codes to a runtime environment. In key ways, scripting languages are made for specific runtime environments, and they automate some of the code implementation.


In that sense, they are modernizations of a system that previously used compilers to interpret inputs.

Techopedia Explains Scripting Language

Examples of scripting language implementation involve their use in operating system shells and web browser technologies, and elsewhere, where the interpreter can enhance how the language is used.

Example: Python

A basic comparison of scripting languages in programming evolution involves Python, one of the most popular languages used for many new kinds of projects involving machine learning.

Python is known as a scripting language in its modular and automated build, compared to legacy programming languages like COBOL and BASIC, which are known as compiled languages.

Interpreted Languages

In many cases, a scripting language uses an interpreter instead of a compiler, and that's how you can tell whether a language is a scripting language or not.

Compiled languages use a compiler to make code into assembly language or machine language. By contrast, scripting languages and other interpreted languages use an interpreter.

The interpreter is responsible to interpret the source code for program execution. You could say that in a scripting language with an interpreter, the code is the language itself, and it gets interpreted relatively on-the-fly. Other kinds of systems like just-in-time compiling can also apply.


An example of the complexity of compiler languages and interpreted languages such as scripting languages is evident in the evolution of Sun Microsystems and its Java computer programming language set, which has been so much a fundamental part of computer science for so many years.

Classic Java is commonly known as a compiler language. It uses the traditional compiler system to convert code into machine language, as do C++ and other object oriented programming methods of its time.

However, languages like JavaScript are known as interpreter languages, where instead of using a compiler, an interpreter tool is used to change the way that the code syntax is used and implemented. If you, for example, have a virtual machine friendly language like ByteCode interpreting Java script for a compiler, that would be an interpreted language.

Benefits and Disadvantages of Scripting and Interpreted Languages

There are various benefits and disadvantages associated with the use of interpreted languages over compiler languages. The uniqueness of domain-specific scripting languages and their use in various runtime environments has been discussed. There's also the idea that interpreted language systems can help when distributed systems have different machine languages in play that make it difficult for compiled languages to bridge these cross-platform gaps.

On the other hand, some experts talk about latency with interpreted programs, just because the code has to run through an interpreter instead of being traditionally compiled. Experts have to assess these sorts of trade-offs as they consider whether using a scripting language makes sense in a given project environment.

Generally, though, the ability to abstract programming in this way is an attractive part of modernizing our codebase tools.


Related Terms

Margaret Rouse
Senior Editor
Margaret Rouse
Senior Editor

Margaret is an award-winning technical writer and teacher known for her ability to explain complex technical subjects to a non-technical business audience. Over the past twenty years, her IT definitions have been published by Que in an encyclopedia of technology terms and cited in articles by the New York Times, Time Magazine, USA Today, ZDNet, PC Magazine, and Discovery Magazine. She joined Techopedia in 2011. Margaret's idea of a fun day is helping IT and business professionals learn to speak each other’s highly specialized languages.