Pessoal, estou tentando fazer uma DSL baseada em portugues, a idéia é o usuário digitar um código em portugues e ele rodar o programa.
Mas estou tendo um problema, não sei como fazer para definir as funções “default” da linguagem.
Por exemplo, se eu definir uma função
E depois criar uma instância de GroovyShell, rodando por exemplo:
GroovyShell gs=new GroovyShell()
gs.evaluate("imprima(\"a\")")
Ele não vai encontrar a função “imprima”.
Também não sei como (e nem se é possível) colocar essa “imprima” como se fosse uma função padrão do groovy, podendo chamar ela com liberdade pelo groovy console.
Alguem tem alguma sugestao de como posso fazer isto?