<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 7.03.2016 0:23, Al Sweigart wrote:<br>
    </div>
    <blockquote
cite="mid:CAM=hmRNN0wvedwRpsO2Sv06u2u_tW6n+xKp8AOJ70WADS8h1Hw@mail.gmail.com"
      type="cite">How does it compare to Philip Guo's Python Tutor? <a
        moz-do-not-send="true" href="http://www.pythontutor.com/"><a class="moz-txt-link-freetext" href="http://www.pythontutor.com/">http://www.pythontutor.com/</a></a>
      I really like how this tool can trace forwards and backwards
      through the program.</blockquote>
    <br>
    Backwards tracing is really nice feature, that Thonny doesn't
    support yet.<br>
    <br>
    I think that pragmatically the most important difference is that
    Pythontutor is mostly a runtime visualizer with possibility to
    submit your own (small) programs, whereas Thonny tries to be both a
    beginner-friendly IDE and then a runtime visualizer. I believe the
    usage of Pythontutor is usally complemented with separate IDE (eg.
    IDLE), but <b>Thonny wants to be IDLE and Pythontutor combined</b>.
    Actually Thonny includes even a Python distribution, so that total
    beginners need to install only one thing to their computers.<br>
    <br>
    The differences in visualization:<br>
    <br>
    <b>I believe Thonny's way of visualizing function call is superior</b>,
    because its stack frames contain the source code, allowing
    indication where the "execution point" lies on each frame.
    Pythontutor (like most professional IDES) visualizes function calls
    as jumps in the source code and I've seen that this messes up
    students' model about function calls. For many students this broken
    model becomes the roadblock for understanding recursion.<br>
    <br>
    If I understand correctly, then <b>Pythontutor can't show how an
      expression gets evaluated stepwise</b> (pleas correct me if i'm
    wrong). Thonny can.<br>
    <br>
    Pythontutor uses arrows for explaining <b>references</b>, Thonny
    uses variables table with names => addresses and heap table with
    addresses => values. I think Pythontutor's solution is more
    intuitive, but Thonny's solution is more scalable.<br>
    <br>
    best regards,<br>
    Aivar<br>
  </body>
</html>