Qual a ordem parcial entre os efeitos colaterais dos links e a evaluation de condições de cada link?
Por exemplo, no aplicativo tictactoe existe os seguintes links:
Qual a ordem parcial entre os efeitos colaterais dos links e a evaluation de condições de cada link?
Por exemplo, no aplicativo tictactoe existe os seguintes links:
Gostaríamos de lembrar aos possíveis interessados que o prazo de registro para participação no Concurso ITU-T de Aplicações para IPTV 2012 (IPTV Application Challenge) se encerra nesta semana, dia 15 de agosto de 2012. Já o prazo para a submissão de aplicações se encerra no dia 07 de setembro de 2012.
Gostaríamos de relembra-los de que há dois concursos de aplicações Ginga-NCL com inscrições ainda abertas. O convite é aberto a toda a comunidade de desenvolvedores de aplicações para o Middleware Ginga-NCL, em nível internacional. São os seguintes concursos:
55 comentários
Eu descrevo abaixo um cenário que pode levar a um questionamento crítico desta situação.
Considere que a execução da aplicação se encontra num momento T após a seleção do component empty0 e que property turn do noSettings está com valor x. No momento T, os dois links são avaliados para determinar sua validade. Neste momento, apenas a condição do primeiro link será avaliada como verdadeira. A ação de set executada na interface "_pos0" do component "noSettings" só é executada em um momento T', que obrigatoriamente acontece depois da condição ser avaliada. O início da seleção de empty0 já aconteceu em um momento anterior ao momento atual (T'). Então, no momento T', o segundo link não pode ser avaliado como verdadeiro, visto que neste momento não há seleção do component empty0.
Por essa razão, na minha opinião, só pode haver reavaliação nas condições dos links após a transição no evento do primeiro bind, que leva a execução da aplicação para um momento T'. Se nesse momento T' houver outra seleção de empty0, aí sim o segundo link é disparado.
> Eu descrevo abaixo um cenário que pode levar a um questionamento crítico desta situação.
> Considere que a execução da aplicação se encontra num momento T após a seleção do component empty0 e que property turn do noSettings está com valor x. > No momento T, os dois links são avaliados para determinar sua validade. Neste momento, apenas a condição do primeiro link será avaliada como verdadeira. Isso é impossível. Não é possível ter dois eventos "ao mesmo tempo". Somente é possível que eles se sobreponham. Essa premissa é inválida. Necessariamente a avaliação dos dois ocorrerá em momentos diferentes (se sobrepondo ou não), é fisicamente impossível. > A ação de set executada na interface "_pos0" do component "noSettings" só é executada em um momento T', que obrigatoriamente acontece depois da condição ser avaliada. O início da seleção de empty0 já aconteceu em um momento anterior ao momento atual (T'). Então, no momento T', o segundo link não pode ser avaliado como verdadeiro, visto que neste momento não há seleção do component empty0. Dado que as duas avaliações não ocorreram no momento T, essa implicação necessita de maior substanciação, já que ela não implica mais que ocorrerá após as duas necessariamente. > Por essa razão, na minha opinião, só pode haver reavaliação nas condições dos links após a transição no evento do primeiro bind, que leva a execução da aplicação para um momento T'. Se nesse momento T' houver outra seleção de empty0, aí sim o segundo link é disparado. Gostaria de compreender o que a linguagem NCL especifica, se especifica. Se a mesma não especifica, então talvez essa seja uma discussão importante para o Guia de Operações. Obrigado, -- Felipe Magno de Almeida