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
BASIC
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
Forth is a stack-based concatenative imperative programming language using reverse polish notation.
Toy languages
Brainfuck
Brainfuck is an extremely minimalist esoteric programming language.
FlipJump
FlipJump is a minimalistic One-instruction set computer.
Scripting languages
Io
Io is a prototype-based object-oriented scripting language.
Lisp
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
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
ECMAScript
There are many embeddable implementation of ECMAScript like:
- Duktape
- Espruino
- JerryScript
- jsish
- MuJS
- QuickJS
Derivatives of ECMAScript:
Lua
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
Wren is a small, fast, object-oriented scripting language.[7]
References
See also