PLDB
Languages Features Calendar CSV Lists Blog About Sponsor Add Language
GitHub icon

Limbo

Limbo

Limbo is a pl created in 1995 by Rob Pike.

#171on PLDB 27Years 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"); }
Example from the Hello World Collection:
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 Example Token
Print() Debugging sys->print
Semantic Indentation ϴ

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
pl-sql.html · limbo.html · blitzbasic.html

View source

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