<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    On 09/02/2016 02:07 PM, Saulo Araujo wrote:<br>
    <blockquote
cite="mid:CA+ckhoTMYpQZhheYKE2F8epTDxDcy4AVvOC47bQ+dzrj8b-UGw@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote">
            <blockquote class="gmail_quote" style="margin:0px 0px 0px
              0.8ex;border-left:1px solid
              rgb(204,204,204);padding-left:1ex">
              <div bgcolor="#FFFFFF">I think this really is a serious
                usability issue.  In your original example, what happens
                when your program is using a library that, between
                versions, starts making more RPCs, so your UI says that
                "your" code is "still working" when actually it's an
                expensive RPC in a library?<br>
                <br>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>
              <div>
                <div>In this particular case, the UI would correctly
                  show to the user that there is some ongoing work.<br>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    But the original intent may have been only to report ongoing work in
    the application itself, rather than in libraries that it uses.  With
    multiple threads providing background services, the results could be
    very confusing.<br>
     
    <blockquote
cite="mid:CA+ckhoTMYpQZhheYKE2F8epTDxDcy4AVvOC47bQ+dzrj8b-UGw@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote">
            <blockquote class="gmail_quote" style="margin:0px 0px 0px
              0.8ex;border-left:1px solid
              rgb(204,204,204);padding-left:1ex">
              <div bgcolor="#FFFFFF">To add such behavior on top of
                existing Ur/Web code, you just need to redefine the
                identifier [rpc] at the top of a file, which could be
                accomplished by [open]ing a library module.<span
                  class="gmail-"><br>
                </span></div>
            </blockquote>
            <div><br class="gmail-Apple-interchange-newline">
              Rather than changing every file that is part of a library
              (possibly developed by others, in which case I may not
              even have its source code), I would prefer redefining the
              functions requestUri and xhrFinished to update the
              rpcCount source. Both options seem like a hack to me.
              However, the latter is a more centralized one.</div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    I think it is a desirable feature of the language to prevent
    implicit changes to behavior of operations.  So, if this counting
    isn't built in (and it isn't clear that its use cases are compelling
    enough), then I like that it takes explicit work in code to add
    counting.<br>
    <br>
    <blockquote
cite="mid:CA+ckhoTMYpQZhheYKE2F8epTDxDcy4AVvOC47bQ+dzrj8b-UGw@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>
          <div class="gmail_quote">I think that AngularJS (and others)
            provides a "poor's man" aspect oriented programming.<br>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    Yes, and aspect-oriented programming has very few fans today.  Even
    some of its original designers repudiate it!<br>
  </body>
</html>