PLDB
Languages Features Creators Calendar CSV Resources Blog About Donate Add Language
GitHub icon

Limbo

< >

Limbo is a programming language created in 1995 by Rob Pike.

#173on PLDB 28Years Old 386Users
3Books 1Papers 529Repos

Try now: Riju

Limbo is a programming language for writing distributed systems and is the language used to write applications for the Inferno operating system. It was designed at Bell Labs by Sean Dorward, Phil Winterbottom, and Rob Pike. The Limbo compiler generates architecture-independent object code which is then interpreted by the Dis virtual machine or compiled just before runtime to improve performance. Read more on Wikipedia...


Example from the web:
Lock: module { PATH: con "/dis/lib/lock.dis"; Semaphore: adt { c: chan of int; obtain: fn(nil: self ref Semaphore); release: fn(nil: self ref Semaphore); new: fn(): ref Semaphore; }; init: fn(); };
Example from Riju:
implement Cmd; include "sys.m"; include "draw.m"; Cmd : module { init : fn (ctxt : ref Draw->Context, args : list of string); }; init(nil : ref Draw->Context, nil : list of string) { sys := load Sys Sys->PATH; sys->print("Hello, world!\n"); }
Example from hello-world:
implement Hello; include "sys.m"; sys: Sys; include "draw.m"; Hello: module { init: fn(ctxt: ref Draw->Context, argv: list of string); }; init(ctxt: ref Draw->Context, argv: list of string) { sys = load Sys Sys->PATH; sys->print("Hello World\n"); }
Hello World in Limbo. Limbo is the programming language of the Inferno OS (from Lucent Bell Labs). implement Cmd; include "sys.m"; include "draw.m"; Cmd : module { init : fn (ctxt : ref Draw->Context, args : list of string); }; init(nil : ref Draw->Context, nil : list of string) { sys := load Sys Sys->PATH; sys->print("Hello World\n"); }
Example from Wikipedia:
implement Command; include "sys.m"; sys: Sys; init(Context, nil: list of string) { sys = load Sys Sys->PATH; print("Hello World!\n"); }

Language features

Feature Supported Token Example
Print() Debugging sys->print
Semantic Indentation X

Books about Limbo from ISBNdb

title authors year publisher
Inferno Programming with Limbo Stanley-Marbell, Phillip 2003 Wiley
Inferno Programming Using Limbo Steven Breitstein 1997 Academic P
Limbo 48 Success Secrets - 48 Most Asked Questions On Limbo - What You Need To Know Howard Beck 20141219 Emereo

Publications about Limbo from Semantic Scholar

title authors year citations influentialCitations
Programming in Limbo S. Dorward and R. Pike and P. Winterbottom 1997 15 0
blitzbasic.html · limbo.html · agda.html

View source

PLDB - Build the next great programming language · Search · v2023 · Day 160 · Docs · Acknowledgements · Traffic Today · Traffic Trends · Mirrors · GitHub · feedback@pldb.com