Ahh explicitness :)

On Thu, May 3, 2018 at 10:56 AM, Tudor Girba <tu...@tudorgirba.com> wrote:

> How about: #newAst & #cachedAst?
>
> Cheers,
> Doru
>
>
> > On May 3, 2018, at 9:30 AM, Guillermo Polito <guillermopol...@gmail.com>
> wrote:
> >
> > method newAst ?
> >
> > On Wed, May 2, 2018 at 11:03 PM, Bernardo Ezequiel Contreras <
> vonbecm...@gmail.com> wrote:
> > a "parse tree" is not equal to an "ast"(abstract syntax tree)
> > but its difficult to find a name for an ast that is not cached.
> > maybe
> > parsedAst
> > parseAst
> > ....
> >
> >
> > On Wed, May 2, 2018 at 3:28 PM, Richard Sargent <richard.sargent@
> gemtalksystems.com> wrote:
> > On Wed, May 2, 2018 at 11:06 AM, Denis Kudriashov <dionisi...@gmail.com>
> wrote:
> > Hi.
> >
> > Maybe #parseSourceCode would be better name for #parseTree.
> >
> > I've always found it good advice to avoid using a verb phrase to name
> something which does not entail some kind of action.
> > #parseSourceCode realy reads like something which would parse the source
> code. #parseTree also has that effect, except for the lack of a tree to
> parse.
> >
> >
> >
> > 2018-05-02 16:33 GMT+03:00 Marcus Denker <marcus.den...@inria.fr>:
> >
> >
> > > On 27 Apr 2018, at 21:36, Sean P. DeNigris <s...@clipperadams.com>
> wrote:
> > >
> > > Marcus Denker-4 wrote
> > >> I will add comments…
> > >
> > > I got confused by this again and created an issue:
> > > https://pharo.manuscript.com/f/cases/21806/Document-
> Difference-between-ast-and-parseTree
> > >
> > > And then Peter Uhnak reminded me on Discord about this thread. I'm
> happy to
> > > add the comments, but not sure I understand the issue well enough.
> IIUC #ast
> > > is cached, but #parseTree is not. What I don't understand is the
> purpose of
> > > this difference and when one would use one over the other.
> >
> > the cached #ast is for one interesting for speed (that is, in situations
> where you ask for it often).
> >
> > The other use-case is if you want to annotate the AST and keep that
> annotation around (till the next
> > image save, but you can subscribe to ASTCacheReset and re-install the
> AST in the cache after cleaning.
> > (This is used by MetaLinks to make sure they survive image restart).
> >
> > The last thing that it provides is that we do have a quite powerful
> mapping between bytecode/text/context
> > and the AST. Regardless how you navigate, you get the same object.
> >
> > e.g. even this one works:
> >
> >         [ 1+2 ] sourceNode == thisContext method ast blockNodes first
> >
> > > For example,
> > > when, if ever, would a user want to access a CM's #ast (as opposed to
> > > #parseTree) and could modifying it create problems?
> > >
> >
> > Modification is a problem, yes.. code that wants to modify the AST
> without making sure the compiledMethod is in sync later
> > should use #parseTree.
> >
> > Code that does not modify the AST (or makes sure to compile it after
> modification) is free to use #ast.
> > or if you want to annotate the AST (which is a modification, after all).
> >
> > This is not perfect (not at all…) but the simplest solution to get (to
> some extend) what you would have if the system would have
> > a real persistent, first class AST…
> >
> > To be improved. The ASTCache with it’s naive “lets just cache everything
> till the next image save” was done with the idea to see
> > when it would show that it is too naive… for that it worked amazingly
> well till now.
> >
> >         Marcus
> >
> >
> >
> >
> >
> > --
> > Bernardo E.C.
> >
> > Sent from a cheap desktop computer in South America.
> >
> >
> >
> > --
> >
> > Guille Polito
> > Research Engineer
> >
> > Centre de Recherche en Informatique, Signal et Automatique de Lille
> > CRIStAL - UMR 9189
> > French National Center for Scientific Research - http://www.cnrs.fr
> >
> > Web: http://guillep.github.io
> > Phone: +33 06 52 70 66 13
>
> --
> www.tudorgirba.com
> www.feenk.com
>
> "What is more important: To be happy, or to make happy?"
>
>
>


-- 



Guille Polito

Research Engineer

Centre de Recherche en Informatique, Signal et Automatique de Lille

CRIStAL - UMR 9189

French National Center for Scientific Research - *http://www.cnrs.fr
<http://www.cnrs.fr>*


*Web:* *http://guillep.github.io* <http://guillep.github.io>

*Phone: *+33 06 52 70 66 13

Reply via email to