<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <br>
    <br>
    <div class="moz-cite-prefix">On 12/19/2015 04:23 PM, Eliot Miranda
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAC20JE3Oz33G3LFxJqqox3mW+K-FTRpn34TjqFA=FVkeaTPdng@mail.gmail.com"
      type="cite">
      <pre wrap=""> </pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <div dir="ltr"><br>
        <div class="gmail_extra"><br>
          <div class="gmail_quote">On Fri, Dec 18, 2015 at 11:25 PM,
            Robert Withers <span dir="ltr">&lt;<a
                moz-do-not-send="true"
                href="mailto:robert.w.withers@gmail.com" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:robert.w.withers@gmail.com">robert.w.withers@gmail.com</a></a>&gt;</span>
            wrote:<br>
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex"> <br>
              <div text="#000000" bgcolor="#FFFFFF"> <br>
                <br>
                <div>On 12/19/2015 02:09 AM, Eliot Miranda wrote:<br>
                </div>
                <blockquote type="cite">
                  <pre> </pre>
                  <br>
                  <fieldset></fieldset>
                  <br>
                  <div>Hi Robert,<br>
                    <br>
                  </div>
                  <div>On Dec 18, 2015, at 9:51 PM, Robert Withers &lt;<a
                      moz-do-not-send="true"
                      href="mailto:robert.w.withers@gmail.com"
                      target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:robert.w.withers@gmail.com">robert.w.withers@gmail.com</a></a>&gt;
                    wrote:<br>
                    <br>
                  </div>
                  <blockquote type="cite">
                    <div><span>Eliot, what does Sista do and how is that
                        accomplished? </span></div>
                  </blockquote>
                  <div><br>
                  </div>
                  Run-time adaptive optimisation via an SSA-based
                  image-level bytecode-to-bytecode inlining compiler. 
                  See
                  <div><br>
                    <div><a moz-do-not-send="true"
href="http://www.mirandabanda.org/cogblog/on-line-papers-and-presentations/"
                        target="_blank">http://www.mirandabanda.org/cogblog/on-line-papers-and-presentations/</a></div>
                    <div><br>
                      <div><br>
                        <blockquote type="cite">
                          <div><span>It sounds like a next level kind of
                              system. Does it compare to what other JITs
                              are doing in various VMs?</span><br>
                          </div>
                        </blockquote>
                        <div><br>
                        </div>
                        Yes it does. Clément recently attended a
                        workshop at Google and found that Sista is very
                        similar in the kinds of optimisations it
                        performs to V8 and Dart.  The key research
                        funding will be how close the performance of
                        targeting stack-oriented bytecode that the Cog
                        JIT converts to register-based code can be made
                        to JITs that directly target register-based
                        machine code.</div>
                    </div>
                  </div>
                </blockquote>
                <br>
                This sounds like you are saying that Sista performs
                better or more naturally with stack-oriented bytecode.
                If you wouldn't mind taking the time to explore it with
                us, what's the difference between stack-oriented and
                register-based code, such that Sista would be different
                between them? I'm off to read some.<br>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>I'd rather not. That's something there's lots of papers
              on, and I'm not sure it's really important that I
              explain.  Yoiu can inform yourself, and the Sista talks I
              pointed to at least mention the topic.  I will say that
              our thesis is that we can generate efficient
              register-based machine code from stack-oriented bytecode,
              and that's one of the things we're trying to demonstrate
              with Sista.</div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    Having had a little bit of sleep, upon waking I just have to say I
    am disappointed in this response. As a seeker of knwoledge, I'm
    certainly willing to research deeply, yet that is a time investment
    when I also have a full plate. Nonetheless, the negative response to
    a search of knowledge is indicative of an attitude I often find and
    it is a real shame, a real shame for everyone. I reread what I wrote
    and yes, in the scope of an exploration, as I said, denotes a big
    time investment to dive deep. You could have said so, not a big time
    investment, but go towards more of a paragraph then a sentence in
    helping to feed me when I was hungry. A more paranoid personality
    that lives within me thinks it may have been something I personally
    did to garnish a more negative response, but I'm convinced it was
    the way I broached.<br>
    <br>
    You see how I talk myself out of being frustrated? I try to stand in
    your shoes, for a moment, without ego nor assuming the worst. It
    works.<br>
    <br>
    <br>
    alright then, best,<br>
    robert<br>
     <br>
    <blockquote
cite="mid:CAC20JE3Oz33G3LFxJqqox3mW+K-FTRpn34TjqFA=FVkeaTPdng@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote">
            <div> </div>
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <div text="#000000" bgcolor="#FFFFFF"> <br>
                <br>
                <blockquote type="cite">
                  <div>
                    <div>
                      <div><span
                          style="background-color:rgba(255,255,255,0)"><br>
                        </span></div>
                      <div><span
                          style="background-color:rgba(255,255,255,0)">_,,,^..^,,,_

                          (phone)</span></div>
                      <div><span
                          style="background-color:rgba(255,255,255,0)"><br>
                        </span></div>
                      <div>
                        <blockquote type="cite">
                          <div><span></span><br>
                            <span>thank you,</span><br>
                            <span>robert</span><br>
                            <span></span><br>
                            <span>.    ..               ...
                                                                              ^,^</span><br>
                            <span></span><br>
                            <span></span><br>
                            <span></span><br>
                            <span>On 12/18/2015 11:11 PM, Eliot Miranda
                              wrote:</span><br>
                            <blockquote type="cite"><span>  Further,
                                please keep the original Smalltalk
                                non-primitive implementation around do
                                that when we deliver Sista we can see
                                how well we stack up against C.</span><br>
                            </blockquote>
                            <blockquote type="cite"><span></span><br>
                            </blockquote>
                            <blockquote type="cite"><span>_,,,^..^,,,_
                                (phone)</span><br>
                            </blockquote>
                            <blockquote type="cite"><span></span><br>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span>On Dec 18,
                                  2015, at 5:59 PM, David T. Lewis &lt;<a
                                    moz-do-not-send="true"
                                    href="mailto:lewis@mail.msen.com"
                                    target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:lewis@mail.msen.com">lewis@mail.msen.com</a></a>&gt;

                                  wrote:</span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span></span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span></span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite"><span>On Fri,
                                    Dec 18, 2015 at 08:13:00PM -0500,
                                    Robert Withers wrote:</span><br>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite"><span></span><br>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite">
                                  <blockquote type="cite"><span>On
                                      12/18/2015 08:07 PM, David T.
                                      Lewis wrote:</span><br>
                                  </blockquote>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite">
                                  <blockquote type="cite"><span></span><br>
                                  </blockquote>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite">
                                  <blockquote type="cite"><span>If you
                                      are implementing your algorithm
                                      from scratch, then it would be</span><br>
                                  </blockquote>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite">
                                  <blockquote type="cite"><span>nice if
                                      it could be done in Smalltalk,
                                      because that means we can all</span><br>
                                  </blockquote>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite">
                                  <blockquote type="cite"><span>read it,
                                      play with it in the image, and
                                      write unit tests to validate and</span><br>
                                  </blockquote>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite">
                                  <blockquote type="cite"><span>document
                                      its behavior. We can figure out
                                      the translation to C afterwords,</span><br>
                                  </blockquote>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite">
                                  <blockquote type="cite"><span>once you
                                      have a good implementation in
                                      Smalltalk (and yes I will help</span><br>
                                  </blockquote>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite">
                                  <blockquote type="cite"><span>with
                                      that).</span><br>
                                  </blockquote>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite"><span>I have a
                                    smalltalk implmentation that came
                                    from Google Java code and is</span><br>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite"><span>fully
                                    implemented in squeak/pharo. I am
                                    intermittently fixing byte</span><br>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite"><span>mutations
                                    in the payload, so it is working to
                                    a degree. Check out the</span><br>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite"><span>classes
                                    GenericGF, GenericGFPoly and
                                    GaloisField to see the insides.</span><br>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite"><span>FECEncoder
                                    and FECDecoder are calling the
                                    galoisField which builds a</span><br>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite"><span>ReedSolomon
                                    Decoder. That last is where the
                                    error detection occurs.</span><br>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite"><span></span><br>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite">
                                <blockquote type="cite"><span>Thank you
                                    all very much for looking out!</span><br>
                                </blockquote>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span>I guess my
                                  suggestion would be that once you have
                                  a fairly good working</span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span>implementation
                                  that you are comfortable with from a
                                  functional point of</span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span>view, then
                                  let's look at which methods in that
                                  implementation would benefit</span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span>from being
                                  translated to primitives in C. It
                                  would be especially good if</span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span>you can run
                                  a profiler on your Smalltalk
                                  implementation and see where the</span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span>time is
                                  being spent. Those would be the things
                                  we would want to turn into</span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span>primitives.
                                  But first things first, let's get it
                                  working 100% (not "to a</span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span>degree") and
                                  then we can do the translation to
                                  primitives.</span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span></span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span>Dave</span><br>
                              </blockquote>
                            </blockquote>
                            <blockquote type="cite">
                              <blockquote type="cite"><span></span><br>
                              </blockquote>
                            </blockquote>
                            <span></span><br>
                            <span>-- </span><br>
                            <span>. .. .. ^,^ robert</span><br>
                          </div>
                        </blockquote>
                      </div>
                    </div>
                  </div>
                </blockquote>
                <br>
                <div>-- <br>
                  <div align="left">. .. .. ^,^ robert </div>
                </div>
              </div>
              <br>
            </blockquote>
          </div>
          <br>
          <br clear="all">
          <div><br>
          </div>
          -- <br>
          <div class="gmail_signature">
            <div dir="ltr">
              <div><span
                  style="font-size:small;border-collapse:separate">
                  <div>_,,,^..^,,,_<br>
                  </div>
                  <div>best, Eliot</div>
                </span></div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    <div class="moz-signature">-- <br>
      <div align="left">. .. .. ^,^ robert
      </div>
    </div>
  </body>
</html>