Hi Jochen, jshell, the equivalent of groovysh for java included in 9, does something like this, it stores the content of all variables declaration as fields into a synthetic class and all statements as method so statement have access to the content of the field.
But because you have bindings in groovy, it may be simpler ? (i do not know if bindings are typed ?) cheers, Rémi ----- Mail original ----- > De: "Jochen Theodorou" <blackd...@gmx.org> > À: dev@groovy.apache.org > Envoyé: Mercredi 24 Mai 2017 09:49:32 > Objet: groovysh and local variables > Hi, > > a User on the user-list mentioned it is currently not possible to define > a local variable in one evaluation and use it in the next. So for example > > > def x = 10 > > > println x > > this fails because the eval for println x has no knowledge about x=10. > > Is this correct, did we have any plans to change this? I mean I know why > it behaves like that and as a script you would get the same. But in the > context of groovysh I really wonder if that makes sense. We could > extract the top level local variables using a transform and make them > and their values available to the next evaluation > > bye Jochen