08.02.2015 Views

Programação Funcional e Concorrente com Scheme

Programação Funcional e Concorrente com Scheme

Programação Funcional e Concorrente com Scheme

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

notas de aula -<br />

Jerônimo C. Pellegrini<br />

msg1 (par1, par2, ...)<br />

msg2 (par1, par2, ...)<br />

...<br />

<strong>com</strong>andos:<br />

/* Para cada tipo de mensagem, uma sequência de<br />

ações é descrita */<br />

msg1: ...<br />

msg2: ...<br />

...<br />

13.2.1.2 Criação de atores<br />

Atores são criados usando a expressão new:<br />

new nome-<strong>com</strong>portamento (exp1, exp2, ...)<br />

O valor retornado pela expressão new é o endereço postal do novo ator criado. As<br />

expressões expr1, expr2, ... são usadas <strong>com</strong>o parâmetros para instanciar o <strong>com</strong>portamento.<br />

13.2.1.3 Criação de tarefas<br />

Uma tarefa é criada quando uma mensagem é enviada para um ator:<br />

send <strong>com</strong>unicacao to destino<br />

• <strong>com</strong>unicacao é uma lista (possivelmente vazia) de expressões, que são avaliadas<br />

antes de serem enviadas;<br />

Versão Preliminar<br />

• destino é o endereço postal do ator que receberá a mensagem (e a tarefa).<br />

13.2.1.4 Declarações de interface <strong>com</strong> o mundo externo<br />

13.2.1.5 O ator determina seu substituto<br />

Ao processar uma mensagem, um ator pode determinar que outro ator o substitua. Para<br />

isso ele usa o <strong>com</strong>ando be<strong>com</strong>e:<br />

[ 27 de outubro de 2010 at 15:47 ]<br />

291

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!