ФЭНДОМ


Покажите пример программы 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");
}

Как сравнить значения переменных структурного типа (кортежи, списки)?Править

У меня есть программа с двумя картежами:

a:= (0,0);
b:= (1,1);

Но когда я пытаюсь их сравнить, компилятор выдает такое сообщение:

x.b:123 : cannot compare '(1,1)'  if type (int, int) 
to '(0,0)' of type (int, int)

Вы не можете сравнивать структурные типы в Limbo.

Я получаю ошибки компилятора пытаясь получить доступ к членам массива.Править

У меня есть программа, в которой я определяю массив строк и пытюсь им воспользоваться:

s : array [10] of string;
s[4] = "Строка"

Но получаю ошибки компилятора. То же самое происходит когда я пишу нечто вроде этого:

i : array [10] of int;
i[4] = 10;

В Limbo объявления имеют следующую форму:

объявление:
	список-идентификаторов : тип;
тип:
	тип-данных
	тип-функция

В обоих выражения, array [10] of string и array [10] of int не типы данных, а выражения, выделяющие объекты (каждый размером 10). Поэтому, в вашем случае правильный способ выполнить объявление будет выглядеть так:

список-идентификаторов := выражение;

Ваши выражения должны выглядеть так:

s := array [10] of string;

и

i := array [10] of int;

Как я могу "выгрузить" модуль из памяти?Править

Просто присвойте хэндлу нужного модуля значение nil:

my_module_handle : Module;
my_module_handle = load Module Module->PATH;
...
my_module_handle = nil;

Глобальные переменные и потоки Править

Любой из потоков может изменить значение глобальной переменной, которое будет немедленно доступно всем остальным потокам.

Зачем моему приложению нужен пайп (pipe) ? Править

Если каналы используются для обмена сообщениями между отдельными процессами, порожденными вашим приложением, то пайп (устройство '#|') может понадобиться для обмена данными между приложениями. К его особенностям относится возможность осуществлять операции и чтения и записи на любом из его концов.

Обнаружено использование расширения AdBlock.


Викия — это свободный ресурс, который существует и развивается за счёт рекламы. Для блокирующих рекламу пользователей мы предоставляем модифицированную версию сайта.

Викия не будет доступна для последующих модификаций. Если вы желаете продолжать работать со страницей, то, пожалуйста, отключите расширение для блокировки рекламы.

Также на ФЭНДОМЕ

Случайная вики