<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    Hi Jaromir, Folks,<br>
    <br>
    This is integrated and pushed to GitHub now.<br>
    <br>
    Thanks,<br>
    <br>
    On 1/24/2022 3:51 PM, Jaromir Matas via Cuis-dev wrote:
    <blockquote
cite="mid:BYAPR03MB4072B5E9DB422A2235083127EE5E9@BYAPR03MB4072.namprd03.prod.outlook.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=windows-1252">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:"Courier New";
        color:black;}
p.md-end-block, li.md-end-block, div.md-end-block
        {mso-style-name:md-end-block;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.md-plain
        {mso-style-name:md-plain;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
      <div class="WordSection1">
        <div>
          <p class="md-end-block"><span class="md-plain"><span
                style="font-size: 12pt; font-family:
                "Arial",sans-serif; color: rgb(128, 142,
                149);">Hi Juan, all,<o:p></o:p></span></span></p>
          <p class="md-end-block"><span class="md-plain"><span
                style="font-size: 12pt; font-family:
                "Arial",sans-serif; color: rgb(128, 142,
                149);">Happy to hear from you :)</span></span><span
              style="font-size: 12pt; font-family:
              "Arial",sans-serif; color: rgb(128, 142, 149);"><o:p></o:p></span></p>
          <blockquote style="margin: 1rem 0px 1rem 0.5ch; padding-left:
            2ch; orphans: 2; text-align: start; widows: 2; overflow:
            hidden; word-spacing: 0px;">
            <p class="md-end-block" style="line-height: inherit;
              orphans: 4; margin: 1rem; white-space: pre-wrap;"><br>
              <span class="md-plain"><span style="font-size: 12pt;
                  font-family: "Arial",sans-serif;">Hello
                  Jaromir, Folks,</span></span><span style="font-size:
                12pt; font-family: "Arial",sans-serif;"><o:p></o:p></span></p>
            <p class="md-end-block" style="line-height: inherit;
              orphans: 4; margin: 1rem 0px; white-space: pre-wrap;"><br>
              <span class="md-plain"><span style="font-size: 12pt;
                  font-family: "Arial",sans-serif;">I took a
                  look at the code, and it looks correct to me, although
                  I don't understand this well enough to be sure. All
                  the tests you wrote last year pass, and that is great.</span></span><span
                style="font-size: 12pt; font-family:
                "Arial",sans-serif;"><o:p></o:p></span></p>
            <p class="md-end-block" style="line-height: inherit;
              orphans: 4; margin: 1rem 0px 0px; white-space: pre-wrap;"><br>
              <span class="md-plain"><span style="font-size: 12pt;
                  font-family: "Arial",sans-serif;">I think
                  we'd integrate this. Still, I think it could be good
                  to keep the current #terminate as a separate method,
                  maybe #terminateFromForkedProcess, just in case it
                  proves<br>
                  useful in the future.</span></span><span
                style="font-size: 12pt; font-family:
                "Arial",sans-serif;"><o:p></o:p></span></p>
          </blockquote>
          <p class="md-end-block" style="line-height: inherit; orphans:
            4; margin: 1rem 0px; white-space: pre-wrap; text-align:
            start; widows: 2; word-spacing: 0px;"><br>
            <span class="md-plain"><span style="font-size: 12pt;
                font-family: "Arial",sans-serif; color:
                rgb(128, 142, 149);">Thanks very much for reviewing the
                code; I think this is a good idea to keep the older
                version, at least for a while. I'm really happy it's
                been stable and nobody<br>
                complained :)</span></span><span style="font-size: 12pt;
              font-family: "Arial",sans-serif; color: rgb(128,
              142, 149);"><o:p></o:p></span></p>
          <p class="md-end-block" style="line-height: inherit; orphans:
            4; margin: 1rem 0px; white-space: pre-wrap; text-align:
            start; widows: 2; word-spacing: 0px;"><br>
            <span class="md-plain"><span style="font-size: 12pt;
                font-family: "Arial",sans-serif; color:
                rgb(128, 142, 149);">This new approach of one process
                using two stacks simplifies the code substantially but
                let's keep an eye on it, for sure. Later, if this
                terminate proves as<br>
                stable as the current one, the exact same approach could
                be used for exception unwinds too
                (ContextPart>>resume: etc).</span></span><span
              style="font-size: 12pt; font-family:
              "Arial",sans-serif; color: rgb(128, 142, 149);"><o:p></o:p></span></p>
          <blockquote style="margin: 1rem 0px 1rem 0.5ch; padding-left:
            2ch; orphans: 2; text-align: start; widows: 2; overflow:
            hidden; word-spacing: 0px;">
            <p class="md-end-block" style="margin: 0in; line-height:
              inherit; orphans: 4; white-space: pre-wrap;"><br>
              <span class="md-plain"><span style="font-size: 12pt;
                  font-family: "Arial",sans-serif;">I'd be
                  very thankful if others could take a look, and better
                  yet, try it and see if it brings any trouble.</span></span><span
                style="font-size: 12pt; font-family:
                "Arial",sans-serif;"><o:p></o:p></span></p>
          </blockquote>
          <p class="md-end-block" style="line-height: inherit; orphans:
            4; margin: 1rem 0px; white-space: pre-wrap; text-align:
            start; widows: 2; word-spacing: 0px;"><br>
            <span class="md-plain"><span style="font-size: 12pt;
                font-family: "Arial",sans-serif; color:
                rgb(128, 142, 149);">That would be great, thanks again;
                any concerns or suspicions, please tell me.</span></span><span
              style="font-size: 12pt; font-family:
              "Arial",sans-serif; color: rgb(128, 142, 149);"><o:p></o:p></span></p>
          <p class="md-end-block" style="line-height: inherit; orphans:
            4; margin: 1rem 0px; white-space: pre-wrap; text-align:
            start; widows: 2; word-spacing: 0px;"><br>
            <span class="md-plain"><span style="font-size: 12pt;
                font-family: "Arial",sans-serif; color:
                rgb(128, 142, 149);">Best regards,</span></span><span
              style="font-size: 12pt; font-family:
              "Arial",sans-serif; color: rgb(128, 142, 149);"><o:p></o:p></span></p>
          <p class="md-end-block" style="line-height: inherit; orphans:
            4; margin: 1rem 0px; white-space: pre-wrap; text-align:
            start; widows: 2; word-spacing: 0px;"><br>
            <span class="md-plain"><span style="font-size: 12pt;
                font-family: "Arial",sans-serif; color:
                rgb(128, 142, 149);">Jaromir</span></span><span
              style="font-size: 12pt; font-family:
              "Arial",sans-serif; color: rgb(128, 142, 149);"><o:p></o:p></span></p>
          <p class="md-end-block" style="line-height: inherit; orphans:
            4; margin: 1rem 0px; white-space: pre-wrap; text-align:
            start; widows: 2; word-spacing: 0px;"><br>
            <span class="md-plain"><span style="font-size: 12pt;
                font-family: "Arial",sans-serif; color:
                rgb(128, 142, 149);">--</span></span><span
              style="font-size: 12pt; font-family:
              "Arial",sans-serif; color: rgb(128, 142, 149);"><o:p></o:p></span></p>
          <p class="md-end-block" style="line-height: inherit; orphans:
            4; margin: 1rem 0px; white-space: pre-wrap; text-align:
            start; widows: 2; word-spacing: 0px;"><br>
            <span class="md-plain"><span style="font-size: 12pt;
                font-family: "Arial",sans-serif; color:
                rgb(128, 142, 149);">Jaromir Matas</span></span><span
              style="font-size: 12pt; font-family:
              "Arial",sans-serif; color: rgb(128, 142, 149);"><o:p></o:p></span></p>
        </div>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <div style="border-right: medium none; border-width: 1pt medium
          medium; border-style: solid none none; border-color: rgb(225,
          225, 225) -moz-use-text-color -moz-use-text-color; padding:
          3pt 0in 0in;">
          <p class="MsoNormal" style="border: medium none; padding:
            0in;"><b>From: </b><a moz-do-not-send="true"
              href="mailto:cuis-dev@lists.cuis.st">Juan Vuletich via
              Cuis-dev</a><br>
            <b>Sent: </b>Monday, January 24, 2022 18:15<br>
            <b>To: </b><a moz-do-not-send="true"
              href="mailto:cuis-dev@lists.cuis.st">Discussion of Cuis
              Smalltalk</a><br>
            <b>Cc: </b><a moz-do-not-send="true"
              href="mailto:JuanVuletich@zoho.com">Juan Vuletich</a>; <a
              moz-do-not-send="true" href="mailto:ten@smallinteger.com">
              Andres Valloud</a>; <a moz-do-not-send="true"
              href="mailto:mail@jaromir.net">Jaromir Matas</a>; <a
              moz-do-not-send="true"
              href="mailto:hernan.wilkinson@10pines.com">
              Hernan Wilkinson</a><br>
            <b>Subject: </b>Re: [Cuis-dev] Improved version of
            #terminate</p>
        </div>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><span style="color: black;">On 1/18/2022
            4:07 PM, Jaromir Matas via Cuis-dev wrote:
            <o:p></o:p></span></p>
        <blockquote style="margin-top: 5pt; margin-bottom: 5pt;">
          <p class="MsoNormal"><span style="color: black;">Hi Juan, all,<o:p></o:p></span></p>
          <p class="MsoNormal"><span style="color: black;"> <o:p></o:p></span></p>
          <p class="MsoNormal"><span style="color: black;">I'm enclosing
              a new version of #terminate; I thought you might be
              interested to take a look and indeed, I'd be very much
              interested in your opinion. The termination functionality
              and semantics remains intact but the code is simplified
              and addresses Eliot's concerns regarding active process
              termination being done via another process. The enclosed
              code executes both active and suspended process’s
              termination directly by the process being terminated thus
              maintaining the invariant that the unwind blocks are
              executed by the same process that created them (this is
              the only real disadvantage of the current terminate; it’s
              not process faithful). The technique used is to create a
              parallel stack for the process being terminated and run
              the unwinds conveniently from there :) (thorough comments
              included). <o:p>
              </o:p></span></p>
          <p class="MsoNormal"><span style="color: black;"> <o:p></o:p></span></p>
          <p class="MsoNormal"><span style="color: black;">I'm also
              enclosing some updated tests to reflect the new approach
              to the active process termination. If you were interested,
              I'd be happy to also provide updated examples and add some
              more tests later.<o:p></o:p></span></p>
          <p class="MsoNormal"><span style="color: black;"> <o:p></o:p></span></p>
          <p class="MsoNormal"><span style="color: black;">Best regards,<o:p></o:p></span></p>
          <p class="MsoNormal"><span style="color: black;"> <o:p></o:p></span></p>
          <p class="MsoNormal"><span style="color: black;">Jaromir<o:p></o:p></span></p>
          <p class="MsoNormal"><span style="color: black;"> <o:p></o:p></span></p>
        </blockquote>
        <p class="MsoNormal"><span style="color: black;"><br>
            Hello Jaromir, Folks,<br>
            <br>
            I took a look at the code, and it looks correct to me,
            although I don't understand this well enough to be sure. All
            the tests you wrote last year pass, and that is great.<br>
            <br>
            I think we'd integrate this. Still, I think it could be good
            to keep the current #terminate as a separate method, maybe
            #terminateFromForkedProcess, just in case it proves useful
            in the future.<br>
            <br>
            I'd be very thankful if others could take a look, and better
            yet, try it and see if it brings any trouble.<br>
            <br>
            Thanks!<br>
            <br>
            <o:p></o:p></span></p>
        <pre>-- </pre>
        <pre>Juan Vuletich</pre>
        <pre><a moz-do-not-send="true" href="http://www.cuis-smalltalk.org">www.cuis-smalltalk.org</a></pre>
        <pre><a moz-do-not-send="true" href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a></pre>
        <pre><a moz-do-not-send="true" href="https://github.com/jvuletich">https://github.com/jvuletich</a></pre>
        <pre><a moz-do-not-send="true" href="https://www.linkedin.com/in/juan-vuletich-75611b3">https://www.linkedin.com/in/juan-vuletich-75611b3</a></pre>
        <pre><a moz-do-not-send="true" href="https://independent.academia.edu/JuanVuletich">https://independent.academia.edu/JuanVuletich</a></pre>
        <pre><a moz-do-not-send="true" href="https://www.researchgate.net/profile/Juan-Vuletich">https://www.researchgate.net/profile/Juan-Vuletich</a></pre>
        <pre><a moz-do-not-send="true" href="https://patents.justia.com/inventor/juan-manuel-vuletich">https://patents.justia.com/inventor/juan-manuel-vuletich</a></pre>
        <pre>@JuanVuletich</pre>
        <p class="MsoNormal"><span style="font-size: 10pt; font-family:
            "Courier New"; color: black;"><o:p> </o:p></span></p>
      </div>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Juan Vuletich
<a class="moz-txt-link-abbreviated" href="http://www.cuis-smalltalk.org">www.cuis-smalltalk.org</a>
<a class="moz-txt-link-freetext" href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a>
<a class="moz-txt-link-freetext" href="https://github.com/jvuletich">https://github.com/jvuletich</a>
<a class="moz-txt-link-freetext" href="https://www.linkedin.com/in/juan-vuletich-75611b3">https://www.linkedin.com/in/juan-vuletich-75611b3</a>
<a class="moz-txt-link-freetext" href="https://independent.academia.edu/JuanVuletich">https://independent.academia.edu/JuanVuletich</a>
<a class="moz-txt-link-freetext" href="https://www.researchgate.net/profile/Juan-Vuletich">https://www.researchgate.net/profile/Juan-Vuletich</a>
<a class="moz-txt-link-freetext" href="https://patents.justia.com/inventor/juan-manuel-vuletich">https://patents.justia.com/inventor/juan-manuel-vuletich</a>
@JuanVuletich</pre>
  </body>
</html>