-
-
-
CENAPAD-MGCO
A seguir: Co-rotinas - 2
Acima: Exemplos de Uso
Anterior: Exemplos de Uso
Co-rotinas são vistas aqui essencialmente como processos servidores, que recebem demandas e executam um serviço.
COPY:
X :: *[ c: character; west ? c -> east ! c ]
SQUASH:
X :: *[
c: character;
west ? c ->
[ c <> asterisk -> east ! c;
|| c = asterisk ->
west ? c;
[ c <> asterisk -> east ! asterisk;
east ! c
|| c = asterisk -> east ! uparrow
] ] ]
DISASSEMBLE:
*[cardimage: (1..80) character;
cardfile ? cardimage ->
i: integer; i := 1;
*[i <= 80 -> X ! cardimage(i); i := i + 1 ];
X ! space
]