Eu escrevi um código em Julia, também conhecido como Julialang.
Quando tento executar este código, recebo o seguinte erro:
LoadError: Creating a new global in closed module `__toplevel__` (FUNCTION_NAME) breaks incremental compilation because the side effects will not be permanent
O que esse erro significa e o que o causa?
Reduzi o código que tinha em um dos meus módulos para isto:
module ExampleModule
export exampleFunction1
export exampleFunction2
function exampleFunction1()
# blaa blaa
end
end # <-- Note: See answer below
function exampleFunction2()
# blaa blaa
end
end
Este erro pode ser causado pela definição de uma função fora de um módulo.
Neste caso em particular, esta foi a causa do erro no meu código, no entanto, acredito que pode haver outras causas também. (A julgar pelos resultados de pesquisa online, todos eles não estão relacionados a este contexto.)
No código de exemplo fornecido acima, há uma
end
palavra-chave extra, que é marcada pelo comentário.É relativamente fácil introduzir um adicional
end
por acidente.Nesse caso, o extra
end
faz com que a definição do módulo seja concluída e, então, a função final é definida fora do módulo.