Escopo de Variáveis e Shadowing#1044
Escopo de Variáveis e Shadowing#1044Aristidescosta wants to merge 2 commits intoDesignLiquido:principalfrom
Conversation
…ção do intepretador
|
Bom, tive que reverter a solução para suportar o LEGB porque qualquer override de visitarExpressaoDeAtribuicao causa travamento porque Esse método é chamado em loops/recursões internas Acredito que para implementar LEGB seria necessário refatorar O problema é que esta seria uma mudança arquitetural significativa que está fora do escopo desta PR. Como devo proceder? |
|
Obrigado pela PR, @Aristidescosta. A ideia sobre a |
Implementa sistema de escopo LEGB para Pituguês
Problema
O Pituguês não diferenciava escopo local de global corretamente. Quando uma atribuição era feita dentro de uma função, o interpretador modificava a variável global em vez de criar uma variável local, causando efeitos colaterais indesejados.
Closes #1018
Comportamento anterior (incorreto):