Limbo (programovací jazyk) - Limbo (programming language)

Předpeklí
Paradigma Souběžně
Navrhl Sean Dorward, Phil Winterbottom, Rob Pike
Vývojář Bell Labs / Vita Nuova Holdings
Poprvé se objevil 1995 ; Před 26 lety  ( 1995 )
Psací disciplína Silný
OS Peklo
Licence Otevřený zdroj
webová stránka www .vitanuova .com / inferno / limbo .html
Hlavní implementace
Dis virtuální stroj
Ovlivněno
C , Pascal , CSP , Alef , Newsqueak
Ovlivněno
Stackless Python , Go , Rust

Limbo je programovací jazyk pro psaní distribuovaných systémů a je jazyk používaný k psaní aplikací pro operační systém Inferno . Byl navržen v Bell Labs od Sean Dorward , Phil Winterbottom a Rob Pike .

Kompilátor Limbo generuje objektový kód nezávislý na architektuře, který je pak interpretován virtuálním počítačem Dis nebo zkompilován těsně před spuštěním, aby se zlepšil výkon. Proto jsou všechny aplikace Limbo zcela přenosné na všech platformách Inferno.

Přístup Limbo k souběžnosti byl inspirován Hoare ‚s komunikujících sekvenčních procesů (CSP), jak byly provedeny ve znění z roku dříve Pike Newsqueak jazyka a Winterbottom je Alef .

Jazykové funkce

Limbo podporuje následující funkce:

Virtuální stroj

Virtuální stroj Dis, který spouští Limbo kód, je virtuální počítač podobný CISC s pokyny pro aritmetiku, tok řízení , pohyb dat , vytváření procesů , synchronizaci a komunikaci mezi procesy, načítání modulů kódu a podporu pro vyšší typy dat: řetězce, pole, seznamy a komunikační kanály. Využívá hybrid počítání referencí a sběr odpadu v reálném čase pro cyklická data.

Aspekty designu Dis byly inspirovány mikroprocesorem AT&T Hobbit , který byl použit v původním systému BeBox .

Příklady

Limbo používá definice stylu Ada jako v:

 name := type value;
 name0,name1 : type = value;
 name2,name3 : type;
 name2 = value;

Ahoj světe

 implement Command;
 
 include "sys.m";
     sys: Sys;
 
 include "draw.m";

 include "sh.m";
 
 init(nil: ref Draw->Context, nil: list of string)
 {
     sys = load Sys Sys->PATH;
     sys->print("Hello World!\n");
 }

Knihy

3. vydání operačního systému Inferno a programovacího jazyka Limbo jsou popsány v učebnici Inferno Programming with Limbo ISBN   0-470-84352-7 (Chichester: John Wiley & Sons, 2003), autor Phillip Stanley-Marbell . Další učebnice Inferno Programming Book: An Introduction to Programming for the Inferno Distributed System , autorů Martin Atkins, Charles Forsyth, Rob Pike a Howard Trickey, byla zahájena, ale nikdy nebyla vydána.

Viz také

Reference

externí odkazy