Yes, because they are wrong. Here is an issue:��https://pharo.fogbugz.com/f/cases/14254/AST-method-replaceWith-does-not-change-source-interval

2014-10-28 13:32 GMT+02:00 Thierry Goubier <thierry.goubier@gmail.com>:
Le 28/10/2014 12:12, Mark Rizun a ��crit :
�� �� Well, not really.

�� �� Technically, tokens are used to drive a parser from a scanner.

�� �� If an AST node knows how to relate itself to its original source
�� �� code chunk and is able to print itself correctly, then tokens are
�� �� redundant.

�� �� In short, if you work with parsers, you'd better know what tokens
�� �� are. If you're only working with the AST, tokens are redundant and
�� �� noise (i.e. they often have a type (or more than one) which is only
�� �� understood by the parser).


I'm working with ASTs sourceInterval. Trying to calculate it after
method replaceWith:.
You see, my proble was that each node of AST doesn't hold its start and
stop position in same place. So I thought that token is such a place,
however, eventually I understood that RBValueNodes don't have tokens:)

Do you mean you're trying to do a replace and update the positions of all the nodes ?

Thierry