This article needs additional citations for verification. (January 2020) |
Lightweight programming languages are designed to have small memory footprint, are easy to implement (important when porting a language to different computer systems), and/or have minimalist syntax and features.[1]
These programming languages have simple syntax and semantics, so one can learn them quickly and easily. Some lightweight languages (for example Lisp, Forth, and Tcl) are so simple to implement that they have many implementations (dialects).[2]
Compiled languages edit
BASIC edit
BASIC implementations like Tiny BASIC were designed to be lightweight so that they could run on the microcomputers of the 1980s, because of memory constraints.
Forth edit
Forth is a stack-based concatenative imperative programming language using reverse polish notation.
Toy languages edit
FALSE edit
FALSE is a minimalist esoteric programming language, with a complete implementation done in 1024 bytes.
Brainfuck edit
Brainfuck is an extremely minimalist esoteric programming language.
FlipJump edit
FlipJump is a minimalistic One-instruction set computer.
Scripting languages edit
Io edit
Io is a prototype-based object-oriented scripting language.
Lisp edit
Lisp-like languages are very simple to implement, so there are many lightweight implementations of it.
There are some notable implementations:
Derivatives of Lisp:
Tcl edit
Tcl-like languages can be easily implemented because of its simple syntax. Tcl itself maybe not so lightweight, but there exists some, if not many, lightweight implementations of languages which have Tcl-like syntax.[3][4][5]
Embedded languages edit
ECMAScript edit
There are many embeddable implementation of ECMAScript like:
Derivatives of ECMAScript:
Lua edit
Lua is a small (C source is approx. 300 kB tarball, as of version 5.3.5), portable and embeddable scripting language (with LuaJIT as a JIT compiler improving speed). It can be embedded in applications such as computer games to provide runtime scripting capabilities.[6]
Wren edit
Wren is a small, fast, object-oriented scripting language.[7]
References edit
See also edit