Alguém formalizou a relação entre técnicas de análise de redução de turnos e continuações delimitadas?
Ao construir um analisador de baixo para cima (por exemplo, analisadores LR), pegamos uma gramática e, em seguida, representamos estados de análise como conjuntos de itens : produções aumentadas da forma , onde α e β são sequências de terminais e não terminais. O marcador ∙ representa até que ponto o analisador chegou à string, com α representando o que foi visto até agora e representando uma previsão do que ainda pode ser analisado.
Uma acção de mudança de uma transição do autómato LR de análise corresponde a um prefixo da pilha contra , e substitui-lo com um . Uma manipulação tão profunda da pilha se assemelha ao efeito de um operador de controle, mas isso é apenas uma observação qualitativa.
Alguém estudou a conexão entre a análise de redução de turno e os operadores de controle delimitado, como shift / reset?
fonte
Respostas:
Acredito que o artigo a seguir explora parte dessa conexão, principalmente usando continuações para voltar atrás quando as coisas acontecem nos analisadores. Mas definitivamente há mais o que fazer aqui.
fonte