Limbo
- Дата создания:
- 1995
- Создан под влиянием:
- Повлиял на:
- Парадигма:
- Типизация:
- Принятые расширения файлов:
- .b
- Реализации и версии (свернуть все | развернуть все):
Limbo — язык программирования, предназначенный для написания распределенных систем. Также используется для создания приложений под ОС Inferno. Он был разработан в Bell Labs Шоном Доуардом (Sean Dorward), Филом Винтерботтомом (Phil Winterbottom) и Робом Пайком (Rob Pike).
Компилятор Limbo генерирует архитектурно-независимый объектный код, который затем интерпретируется виртуальной машиной Dis или компилируется перед запуском для улучшения производительности. Таким образом, все программы на Limbo с легкостью переносятся на любую платформу Inferno.
В Limbo есть поддержка:
- модульного программирования;
- параллельного программирования;
- строгой проверки типов во время компиляции и во время выполнения программы;
- общение между процессами через типизированные каналы;
- автоматическая сборка мусора;
- простые абстрактные типы данных.
Limbo предоставляет расширенный набор примитивных типов данных:
- byte (8 бит, беззнаковый)
- int (32 бит, знаковый)
- big (64 бит, знаковый)
- real (64 бит, с плавающей точкой)
- списки
- массивы
- строки
- кортежи (упорядоченные коллекции типов)
- каналы (для сообщения между процессами)
- adt (структура, аналогичная struct в C)
- pick (discriminated union type)
- модули.
Графический отладчик Limbo в среде операционной системы Inferno
Ссылки:
Примеры:
Hello, World!:
Пример для версий Inferno Limbo 20100115implement Hello;
include "sys.m";
sys: Sys;
include "draw.m";
Hello: module {
init: fn(nil: ref Draw->Context, argv: list of string);
};
init(nil: ref Draw->Context, argv: list of string)
{
sys = load Sys Sys->PATH;
sys->print("Hello, World!\n");
}
Комментарии
]]>blog comments powered by Disqus
]]>