<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 06/04/2015 04:03 AM, Pierre Massat
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAAGOWhZ_yFBWtXgM5pk2C4nt6Uq-2rGoDXLS3j5k8=zLfDi3=Q@mail.gmail.com"
      type="cite">
      <meta http-equiv="Context-Type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div>
          <div>
            <div>
              <div>
                <div>Dear all,<br>
                  <br>
                </div>
                Just to give you my modest input on this discussion. <br>
                I just looked at IOhannes' last patch and now I got it.
                The mistake I made was to believe that print would send
                the current value to the console at each step of the
                loop (like print in a for loop in Python for instance),
                and that the firing order just before the print only
                mattered at "micro" level.<br>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    This is actually a great example of what I was talking about with
    dogmatic use of trigger vs fanouts.<br>
    <br>
    It sounds like Pierre was thinking that trigger would fire
    "breadth-first" before starting the next iteration of the loop.  If<br>
    he had employed a trigger in this example, he was under the
    impression that [print] would fire each iteration regardless<br>
    of which outlet of trigger it was hooked to.  He thought he could
    put the [print] before OR after the connection triggering the
    recursion.<br>
    <br>
    So even with a dogmatic use of trigger, Pierre would have had a 50%
    chance of hitting the bug.  And that's the same chance<br>
    he had by using the fanout.<br>
    <br>
    Because he did use a fanout, IOhannes' proclamation to never use
    them guided him quickly to the problem.  The irony is<br>
    if he had used a dogmatic trigger and hit the bug, it would have
    taken him longer to find since they are indistinguishable from<br>
    normal triggers.<br>
    <br>
    -Jonathan<br>
    <br>
    <blockquote
cite="mid:CAAGOWhZ_yFBWtXgM5pk2C4nt6Uq-2rGoDXLS3j5k8=zLfDi3=Q@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>
          <div>
            <div>Now of course I understand why I was wrong, after
              looking up depth first on the web.<br>
              <br>
            </div>
            I've been using Pd regularly for 7 years now, so I don't
            consider myself a complete beginner. I use triggers a lot,
            and only use fan outs when I think the order of events is
            not critical. For 7 years I've believed that triggers only
            worked at "micro" level to sequence events that are on the
            same "level". Of course now I know that this assumption was
            completely wrong, and if I had tried harder to understand
            how events are sequenced at "macro" (whole tree) level this
            would have been obvious.<br>
            <br>
            Honestly I think that this particular problem should be
            explained much more clearly in the manual, in the depthfirst
            example file, and perhaps in the trigger help file. I wonder
            how many people in the pd-list would make the same mistake.<br>
            <br>
          </div>
          Anyway, than you again for your enlightening responses.<br>
          <br>
        </div>
        Pierre.<br>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">2015-06-04 8:11 GMT+02:00 Chris
          McCormick <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:chris@mccormick.cx" target="_blank">chris@mccormick.cx</a>></span>:<br>
          <blockquote class="gmail_quote"><span class="">On 04/06/15
              06:03, Jonathan Wilkes via Pd-list wrote:<br>
              > (And fanouts are more obvious than [trigger] objects
              wired in the<br>
              wrong order, and especially where recursion is involved.)<br>
              <br>
            </span>I am confused by this assertion. Can you explain like
            I am five?<br>
            <br>
            Probably my failing but I am unable to imagine a situation
            in which<br>
            "fanouts are more obvious than [trigger]" and I don't
            understand the<br>
            qualifier "especially where recursion is involved". How do
            you define<br>
            "obvious" as used here?<br>
            <br>
            Last night I spent several hours tracking down a bug that
            turned out to<br>
            be because I had used a fan-out instead of a trigger. I am
            not 100% sure<br>
            if this backs up your point or refutes it but either way it
            sucked. :)<br>
            <br>
            I think I will continue to try and make myself use trigger
            objects<br>
            instead of fan-outs to avoid that type of bug again.<br>
            <br>
            Cheers,<br>
            <br>
            Chris.<br>
            <span class="HOEnZb"><br>
              --<br>
              <a moz-do-not-send="true" href="http://mccormick.cx/"
                target="_blank">http://mccormick.cx/</a><br>
            </span>
            <div class="HOEnZb">
              <div class="h5"><br>
                _______________________________________________<br>
                <a moz-do-not-send="true"
                  href="mailto:Pd-list@lists.iem.at">Pd-list@lists.iem.at</a>
                mailing list<br>
                UNSUBSCRIBE and account-management -> <a
                  moz-do-not-send="true"
                  href="http://lists.puredata.info/listinfo/pd-list"
                  target="_blank">http://lists.puredata.info/listinfo/pd-list</a><br>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </body>
</html>