Hi Thierry,

On Sat, Oct 4, 2014 at 6:49 PM, Thierry Goubier <thierry.goubier@gmail.com> wrote:
Hi,

Le 04/10/2014 11:54, Tudor Girba a ��crit :
�� �� And now you are starting to have the issue of handling slices on GT
�� �� from Pharo: do people have to register on Moose, resynchronize on GT
�� �� on Moose, push their slices there, wait for Moose to push a slice to
�� �� integrate on Pharo, wait for Pharo to integrate that slice?


Something like that. Only there is no wait time to integrate in Moose as
GT is a standalone project, and Moose simply integrates the latest
development version of all its dependencies. So, there is not that much
difference to integrating in Pharo. Once a new stable version of GT is
available, it will automatically be available in Pharo.

I don't think this is the way to go. It raises an additional barrier to contributions to GT, such as:

A - I tried GTPlayground on Pharo, I had a DNU, here is the issue I created.

A - I pushed a slice with the corrections

B - In GT development version we decided to go another way. We don't need your slice. Please wait for the next stable version and try again. Thank you for your contribution.

A ---

I'm not sure you'll get another contribution from A after that exchange ;)

I do not understand your scenario. How is it any different from the Pharo integration? If the integrator decides it's not a good fix, it does not get integrated. There will be barely any delay.



�� �� I found that stepping through the opening sequence of GT to debug
�� �� MorphTreeMorph a pain and had to find another way to understand the
�� �� issue.

Can you be more specific? What did you try to achieve and did not manage?

I was trying to find out why a MorphTreeMorph would DNU upon GTDebugger opening ;)

I gave up and went blindly into the MorphTreeMorph code instead, trying to solve it by luck.

Can you be more specific, please? What did you do to get a DNU?
��

�� �� I do have specific tools I can use in such circumstances that you
�� �� don't have.


What kind of tools? I would be interested in learning about them and the
analysis use cases they support.

I have a trace tool for those situations (and also for parser work).

What trace tool? Is an example available?
��
My original use case was:
- Finding the bug in an error correction decoding algorithm which worked without error, but with non-satisfying results: lower than expected SNR.
- Has then been used very successfully to explain the algorithm.
- Was then used as the basis for a hardware design methodology by dynamic code traces of multithreaded programs

Other use cases I use it for:
- Debugging code in Morphic (rectangles, MorphTreeMorph stuff, text editor errors) where halt makes the image unusable.
- Debugging code in Parsers when the code of a reduction is not working properly (somewhere deep in the AST).

Is this more than a logger?

Doru
��

Thierry




--
www.tudorgirba.com

"Every thing has its own flow"