Limbo
Материал из Википедии — свободной энциклопедии
| Семантика: | |
|---|---|
| Появился в: |
1995 г. |
| Автор(ы): |
Шон Дорвард, Фил Винтерботтом, Роб Пайк |
| Типизация данных: | |
| Испытал влияние: | |
| Повлиял на: |
Limbo — язык программирования в ОС Inferno от создателей Unix. «Если бы можно было все начать сначала, что бы мы написали вместо Си?».
[править] Особенности
Язык Limbo близок Си и Java, результатом компиляции является байт-код, что обеспечивает переносимость. Переносимость же лежит в основании самой ОС Inferno (наследницы Plan 9), доведенная до состояния приложения, запускаемого поверх хост-операционной системы: Plan 9, FreeBSD, Irix, GNU/Linux, Mac OS X, Solaris, Windows NT.
Limbo имеет встроенный механизм межпроцессного взаимодействия под названием «channels».
Среди встроенных типов:
- byte (8-bit unsigned),
- int (32-bit signed),
- big (64-bit signed),
- real (64-bit floating point),
- array (структура со слайсами),
- string
- adt (Си подобные структуры)
- tuple (фиксированный список),
- module
- pick (вариант объединения, похожего на свой аналог в IDL) и т. д. см. подробнее на сайте.
[править] Пример программы
Программа, выводящая «Hello, World!».
implement Command;
include "sys.m";
include "draw.m";
sys: Sys;
Command: 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");
for (; argv!=nil; argv = tl argv)
sys->print("%s ", hd argv);
sys->print("\n");
}
[править] Ссылки
- http://doc.cat-v.org/inferno/4th_edition/limbo_language/ The Limbo Programming Language — описание языка
- http://ru.inferno-os.wikia.com/wiki/Inferno-Programmers_Guide Руководство программиста Inferno - описание языка на русском языке
|
|
|
|---|---|
| Используемые в разработке |
Ада • АПЛ • Ассемблер • ActionScript • ABAP/4 • AutoIt • AWK • BASIC • C • Кобол • C++ • C# • ColdFusion • D • dBase • Delphi • Erlang • Eiffel • Forth • Gambas • Фортран • Groovy • Haskell • Java • JavaScript • Icon • Limbo • Лисп • Lua • MATLAB • Object Pascal • Objective-C • Оберон • PowerBASIC • Parser • Паскаль • Perl • PHP • PureBasic • Python • ПЛ/1 • Пролог • Ruby • Tcl • Scheme • Smalltalk • SQL • Vala • Visual Basic • VB.NET |
| Академические | |
| IEC61131-3 |
Instruction List • ST • FBD • Ladder Diagram • SFC |
| Прочие | |
| Эзотерические | |

