Extensible Embeddable Language
- Extensible Embeddable Language
The Extensible Embeddable Language (EEL) is a scripting and programming language, focus on hard real time applications.
EEL uses a C-like syntax with higher level features not existing in the C programming language, which makes it "safe" in most of the environments (i.e. EEL programs should not be able to crash the virtual machine or the host application). EEL is dynamically typed, includes automatic memory management, exception handling and a built-in high level data types.
EEL data-types include strings, dstrings (dynamic strings), vectors (fixed type numeric arrays), arrays (arrays of dynamically typed elements) and tables.
Philosophy
EEL philosophy aims to provide a scripting language that would work in real time systems with 1000+ Hz cycle rates, such as musical synthesizers.
History
Features
EEL uses "limbo lists" to keep track of intermediate objects created inside expressions and the like, which greatly simplifies exception handling, and eliminates the need for active reference counting inevery single operation.
Example code
The classic hello world program can be written as follows:
export function main { print("Hello, world!
"); return 0; }
The following is an example of a recursive function:
export function main { print("Recursion test 1:
"); procedure recurse(arg) { print("arg = ", arg, "
"); if(arg) recurse(arg - 1); } recurse(10); print("Recursion test 2; Mutual Recursion:
"); procedure mrecurse2(arg); procedure mrecurse1(arg) { print("arg = ", arg, "
"); if(arg) mrecurse2(arg); } procedure mrecurse2(arg) { mrecurse1(arg - 1); }; mrecurse1(10); print("Recursion test 2; Mutual Recursion with Function Reference:
"); procedure mrrecurse1(arg, fn) { print("arg = ", arg, "
"); if(arg) fn(arg, fn); } local mrr2 = procedure (arg, fn) { mrrecurse1(arg - 1, fn); }; mrrecurse1(10, mrr2); print(Recursion tests done.
); return 0; }
Internals
Applications
External links
* [http://eel.olofson.net/ EEL homesite]
Wikimedia Foundation.
2010.
Look at other dictionaries:
Scripting language — Scripting redirects here. For other uses, see Script. A scripting language, script language, or extension language is a programming language that allows control of one or more applications. Scripts are distinct from the core code of the… … Wikipedia
Tool Command Language — Pour les articles homonymes, voir Tcl. Tcl Apparu en … Wikipédia en Français
Eel (disambiguation) — Eel or eels may refer to:In biologyRay finned fish:* True eels, fish in the order of Anguilliformes * Electric Eel, a species of knifefish in the order of Gymnotiformes * Deep Sea Spiny Eels, a common name for fish in the family Notacanthidae,… … Wikipedia
ECL — may stand for: *ECL programming language, an extensible programming language developed at Harvard *Eastern Counties League, a football league in East Anglia, England *Ecole Centrale de Lyon, an engineering Grande École (university) in Lyon,… … Wikipedia
Datenbank (Liste) — Die Liste der Datenbankmanagementsysteme umfasst Software zur Verwaltung von Datenbanken, vor allen von relationalen Datenbanken, objektorientierten Datenbanken und objektrelationalen Datenbanken. Inhaltsverzeichnis 0 9 A B C D E F G H I J … Deutsch Wikipedia
Datenbankliste — Die Liste der Datenbankmanagementsysteme umfasst Software zur Verwaltung von Datenbanken, vor allen von relationalen Datenbanken, objektorientierten Datenbanken und objektrelationalen Datenbanken. Inhaltsverzeichnis 0 9 A B C D E F G H I J … Deutsch Wikipedia
Liste von Datenbanken — Die Liste der Datenbankmanagementsysteme umfasst Software zur Verwaltung von Datenbanken, vor allen von relationalen Datenbanken, objektorientierten Datenbanken und objektrelationalen Datenbanken. Inhaltsverzeichnis 0 9 A B C D E F G H I J … Deutsch Wikipedia
Langage de programmation Tcl — Tool Command Language Pour les articles homonymes, voir Tcl. Apparu en 1988 … Wikipédia en Français
TCL/TK — Tool Command Language Pour les articles homonymes, voir Tcl. Apparu en 1988 … Wikipédia en Français
Tcl/Tk — Tool Command Language Pour les articles homonymes, voir Tcl. Apparu en 1988 … Wikipédia en Français