<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">Hi Benoit --<br><br><div> > <span style="font-family: Arial, Helvetica, sans-serif;font-size: 10pt">Nothing prevents us from replacing Morphic or redesigning it!</span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif">Well, common sense does. ;-) Unless we make this a serious discussion considering Pros and Cons, such hasty thoughts will get us nowhere. From what I have read so far, I assume, that you have no substantial experience in writing Morphic applications? I don't know. Sorry, if my conclusion offended you. Your kind of shallow call just triggered something... :-/</span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif">> [...] </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">what's stopping us from even considering that option?<br></span><span style="font-family: Arial, Helvetica, sans-serif"><br>Maybe because us frequent users of Squeak/Morphic have already realized that both Cuis and Pollock are just different and not inherently better? Well, I don't know about Pollock. Cuis has different goals, backwards compatibility may not be among its most important ones.</span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif">It's not that difficult to come up with something different. The first weeks might be even fun. After that, you figure out all the corner cases and start arguing about compatibility and finding balance within the existing community. It is hard work. It is easy to ignore this fact in the beginning.</span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif">Best,</span></div><div><span style="font-family: Arial, Helvetica, sans-serif">Marcel</span></div><div><div class="mb_sig"></div><blockquote class="history_container" type="cite" style="border-left-style:solid;border-width:1px; margin-top:20px; margin-left:0px;padding-left:10px;">
                        <p style="color: #AAAAAA; margin-top: 10px;">Am 24.02.2023 05:47:30 schrieb Benoit St-Jean via Squeak-dev <squeak-dev@lists.squeakfoundation.org>:</p><div style="font-family:Arial,Helvetica,sans-serif">
    <p>Nothing prevents us from replacing Morphic or redesigning it!</p>
    <p>If Juan was able to do it for Cuis and Sam Shuster was able to
      design Pollock for VW, what's stopping us from even considering
      that option?</p>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 2023-02-23 20:14, Stephen Travis
      Pope wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:6B46202C-5ECB-419F-B9C6-AF13646E0355@heaveneverywhere.com">
      
      <div><br>
      </div>
      Sounds like yet another reason to drop morphic, if you ask me, and
      go back to good-old MVC…
      <div><br>
      </div>
      <div>stp<br>
        <div>
          
          <br class="Apple-interchange-newline" style="font-family: "Times New Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-size: 16px;caret-color: rgb(0, 0, 0);color: rgb(0, 0,
            0)">
          <span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: HelveticaNeue;font-size: 12px;float: none;display: inline !important">--------</span><br style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: HelveticaNeue;font-size: 12px">
          <br style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: HelveticaNeue;font-size: 12px">
          <span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: HelveticaNeue;font-size: 12px;float: none;display: inline !important">Stephen
            Travis Pope    Ojai,</span><span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: HelveticaNeue;font-size: 12px;float: none;display: inline
            !important"> </span><span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: HelveticaNeue;font-size: 12px;float: none;display: inline
            !important">California, USA</span><br style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: HelveticaNeue;font-size: 12px">
          <span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px;caret-color: rgb(0, 0, 0);color: rgb(0, 0,
            0)">    </span><span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0)"></span><span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: HelveticaNeue;font-size: 12px"></span><span style="font-family: "Times New
            Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-size: 16px;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0)"></span><span style="font-family: "Times New Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-size: 16px"></span><span style="caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: "Times New Roman";font-size: 18px;font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none"></span><span><img alt="pastedGraphic.tiff" src="cid:55B397C7-3D20-4E60-A051-4564245235A7@sd.cox.net" moz-do-not-send="true"></img></span>
          
          <span style="font-family: HelveticaNeue"><span style="font-style: normal;font-size: 12px"><br>
                   <a class="moz-txt-link-freetext" href="http://HeavenEverywhere.com">http://HeavenEverywhere.com</a></span></span>
          <div style="font-family: "Times New Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-size: 16px;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0)"><span style="font-family: HelveticaNeue"><span style="font-style: normal;font-size: 12px">     <a class="moz-txt-link-freetext" href="http://FASTLabInc.com">http://FASTLabInc.com</a></span></span></div>
          <div style="font-family: "Times New Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-size: 16px;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0)"><span style="font-family: HelveticaNeue"><span style="font-style: normal;font-size: 12px">   
                 <a class="moz-txt-link-freetext" href="https://vimeo.com/user19434036/videos">https://vimeo.com/user19434036/videos</a></span></span></div>
          <div style="font-family: "Times New Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-size: 16px;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0)"><span style="font-family: HelveticaNeue"><span style="font-style: normal;font-size: 12px">     </span></span><span style="font-size: 12px;font-family: HelveticaNeue"><a class="moz-txt-link-freetext" href="http://heaveneverywhere.com/Reflections">http://heaveneverywhere.com/Reflections</a></span></div>
          <div style="font-family: "Times New Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: auto;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-size: 16px;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0)"><span style="font-family: HelveticaNeue"><span style="font-style: normal;font-size: 12px"><br>
              </span></span><br style="caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: "Times New Roman";font-size: 16px;font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration: none">
          </div>
        </div>
        <div><br>
          <blockquote type="cite">
            <div>On Feb 23, 2023, at 1:54 PM, Vanessa Freudenberg
              <a class="moz-txt-link-rfc2396E" href="mailto:vanessa@codefrau.net"><vanessa@codefrau.net></a> wrote:</div>
            <br class="Apple-interchange-newline">
            <div>
              <div dir="ltr">
                <div>Because Morphic is not multi-thread-clean, you have
                  to be really careful how to write the do_something to
                  be reliably executed from a different process. You
                  have to coordinate with the UI process. In which case
                  it actually becomes simpler to just stay in the UI
                  process and use the mechanisms available.</div>
                <div><br>
                </div>
                <div>Vanessa</div>
                <div><br>
                </div>
                <div class="gmail_quote">
                  <div dir="ltr" class="gmail_attr">On Thu, Feb 23, 2023
                    at 11:38 AM Stephen Travis Pope <<a href="mailto:stephen@heaveneverywhere.com" moz-do-not-send="true" class="moz-txt-link-freetext">stephen@heaveneverywhere.com</a>>
                    wrote:<br>
                  </div>
                  <blockquote class="gmail_quote" style="margin:0px 0px
                    0px 0.8ex;border-left:1px solid
                    rgb(204,204,204);padding-left:1ex">
                    <div>
                      <div><br>
                      </div>
                      I’ve been watching this thread and wondering why
                      nobody suggests the simplest answer:
                      <div><br>
                      </div>
                      <div><span style="white-space:pre-wrap">    </span>[(Delay
                        forSeconds: 5) wait.</div>
                      <div><span style="white-space:pre-wrap">    </span>do_something]
                        fork.</div>
                      <div><br>
                      </div>
                      <div>stp<br>
                        <div>
                          <br style="font-family: "Times New
                            Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-size: 16px">
                          <span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px;float: none;display: inline">--------</span><br style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px">
                          <br style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px">
                          <span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px;float: none;display: inline">Stephen Travis Pope  
                             Ojai,</span><span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px;float: none;display: inline"> </span><span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px;float: none;display: inline">California, USA</span><br style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px">
                          <span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px">    </span><span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px"></span><span style="font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-family: HelveticaNeue;font-size: 12px"></span><span style="font-family: "Times New
                            Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-size: 16px"></span><span style="font-family: "Times New
                            Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-size: 16px"></span><span style="font-family: "Times New
                            Roman";font-size: 18px;font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none"></span><span><span id="cid:186804025b35349b00c1"><pastedGraphic.tiff></span></span><span style="font-family: HelveticaNeue"><span style="font-style: normal;font-size: 12px"><br>
                                   <a href="http://heaveneverywhere.com/" target="_blank" moz-do-not-send="true">http://HeavenEverywhere.com</a></span></span>
                          <div style="font-family: "Times New
                            Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-size: 16px"><span style="font-family: HelveticaNeue"><span style="font-style: normal;font-size: 12px"> 
                                   <a href="http://fastlabinc.com/" target="_blank" moz-do-not-send="true">http://FASTLabInc.com</a></span></span></div>
                          <div style="font-family: "Times New
                            Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-size: 16px"><span style="font-family: HelveticaNeue"><span style="font-style: normal;font-size: 12px"> 
                                   <a href="https://vimeo.com/user19434036/videos" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">https://vimeo.com/user19434036/videos</a></span></span></div>
                          <div style="font-family: "Times New
                            Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-size: 16px"><span style="font-family: HelveticaNeue"><span style="font-style: normal;font-size: 12px"> 
                                   </span></span><span style="font-size: 12px;font-family: HelveticaNeue"><a href="http://heaveneverywhere.com/Reflections" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">http://heaveneverywhere.com/Reflections</a></span></div>
                          <div style="font-family: "Times New
                            Roman";font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none;font-size: 16px"><span style="font-family: HelveticaNeue"><span style="font-style: normal;font-size: 12px"><br>
                              </span></span><br style="font-family: "Times New Roman";font-size: 16px;font-style: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;word-spacing: 0px;text-decoration: none">
                          </div>
                        </div>
                        <div><br>
                          <blockquote type="cite">
                            <div>On Feb 22, 2023, at 11:16 AM, karl
                              ramberg <<a href="mailto:karlramberg@gmail.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">karlramberg@gmail.com</a>>
                              wrote:</div>
                            <br>
                            <div>
                              <div dir="ltr">
                                <div dir="ltr"><br>
                                </div>
                                <br>
                                <div class="gmail_quote">
                                  <div dir="ltr" class="gmail_attr">On
                                    Wed, Feb 22, 2023 at 8:47 AM
                                    Taeumel, Marcel via Squeak-dev <<a href="mailto:squeak-dev@lists.squeakfoundation.org" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">squeak-dev@lists.squeakfoundation.org</a>>
                                    wrote:<br>
                                  </div>
                                  <blockquote class="gmail_quote" style="margin:0px 0px 0px
                                    0.8ex;border-left:1px solid
                                    rgb(204,204,204);padding-left:1ex">
                                    <div>
                                      <div dir="auto">(bm2 future: 1000)
                                        doButtonAction.</div>
                                    </div>
                                  </blockquote>
                                  <blockquote class="gmail_quote" style="margin:0px 0px 0px
                                    0.8ex;border-left:1px solid
                                    rgb(204,204,204);padding-left:1ex">
                                    <div>
                                      <div dir="auto"><br>
                                      </div>
                                      <div dir="auto">Also works for
                                        objects that are not or cannot
                                        be in the world.</div>
                                      <div dir="auto"><br>
                                      </div>
                                      <div dir="auto">Uses Morphic
                                        alarms when when in UI process.</div>
                                    </div>
                                  </blockquote>
                                  <div> </div>
                                  <div>
                                    <div>Ah, that's cool. I never used
                                      #future:  :-)</div>
                                    <div><br>
                                    </div>
                                    <div>Best,</div>
                                    <div>Karl</div>
                                      <br>
                                  </div>
                                  <blockquote class="gmail_quote" style="margin:0px 0px 0px
                                    0.8ex;border-left:1px solid
                                    rgb(204,204,204);padding-left:1ex">
                                    <div>
                                      <div dir="auto"><br>
                                      </div>
                                      <div dir="auto">Best,</div>
                                      <div dir="auto">Marcel</div>
                                      <hr style="display:inline-block;width:98%">
                                      <div id="m_-1050382433257594564m_7109622996527457199divRplyFwdMsg" dir="ltr"><span style="font-family: Calibri, sans-serif"><b>From:</b>
                                          Squeak-dev <<a href="mailto:squeak-dev-bounces@lists.squeakfoundation.org" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">squeak-dev-bounces@lists.squeakfoundation.org</a>>
                                          on behalf of Eduardo Ochs <<a href="mailto:eduardoochs@gmail.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">eduardoochs@gmail.com</a>><br>
                                          <b>Sent:</b> Wednesday,
                                          February 22, 2023 7:17:01 AM<br>
                                          <b>To:</b> The general-purpose
                                          Squeak developers list <<a href="mailto:squeak-dev@lists.squeakfoundation.org" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">squeak-dev@lists.squeakfoundation.org</a>><br>
                                          <b>Subject:</b> Re:
                                          [squeak-dev] How do I "sleep
                                          5"?</span>
                                        <div> </div>
                                      </div>
                                      <div>
                                        <div dir="ltr">
                                          <div dir="ltr">Hi Karl!<br>
                                            Fantastic, thanks! =)<br>
                                            I added this to the class in
                                            which I'm putting most of my
                                            stuff,<br>
                                            <br>
                                            !See class methodsFor: 'as
                                            yet unclassified' stamp:
                                            'Edrx 2/22/2023 02:54'!<br>
                                            run: aBlock after: ms<br>
                                            | aButton |<br>
                                            aButton := SimpleButtonMorph
                                            new.<br>
                                            aButton openInWorld;<br>
                                                    hide;<br>
                                                    target: aBlock;<br>
                                                    actionSelector:
                                            #value;<br>
                                                    addAlarm:
                                            #doButtonAction after: ms.<br>
                                            ! !<br>
                                            <br>
                                            and now I can simply run
                                            this<br>
                                            <br>
                                              See run: [ kf := self
                                            currentHand keyboardFocus ]
                                            after: 5000.<br>
                                            <br>
                                            to save into the variable kf
                                            the morph on which the
                                            keyboard focus is<br>
                                            after 5 seconds. Neat! =)<br>
                                            <br>
                                              Cheers,<br>
                                                Eduardo Ochs<br>
                                                <a href="http://anggtwu.net/eev-squeak.html" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">http://anggtwu.net/eev-squeak.html</a><br>
                                          </div>
                                          <div><br>
                                          </div>
                                          <br>
                                          <div>
                                            <div dir="ltr">On Wed, 22
                                              Feb 2023 at 01:56, karl
                                              ramberg <<a href="mailto:karlramberg@gmail.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">karlramberg@gmail.com</a>>
                                              wrote:<br>
                                            </div>
                                            <blockquote style="margin:0px 0px 0px
                                              0.8ex;border-left:1px
                                              solid
                                              rgb(204,204,204);padding-left:1ex">
                                              <div dir="ltr">
                                                <div>Hi,</div>
                                                <div>A morph has to be
                                                  in the world to be
                                                  able to interact with
                                                  it; eg. #openInWorld.<br>
                                                </div>
                                                <div><br>
                                                </div>
                                                <div>If you don't want
                                                  to see the morph you
                                                  can send it message
                                                  #hide. It makes the
                                                  morph invisible but
                                                  it's still in the
                                                  world and can interact
                                                  with it.<br>
                                                </div>
                                                <div>To see the morph
                                                  again send #show.</div>
                                                <div>To delete the morph
                                                  send #delete. The
                                                  morph will be garbage
                                                  collected.<br>
                                                </div>
                                                <div><br>
                                                </div>
                                                <div>Best,</div>
                                                <div>Karl<br>
                                                </div>
                                                <div><br>
                                                </div>
                                              </div>
                                              <br>
                                              <div>
                                                <div dir="ltr">On Tue,
                                                  Feb 21, 2023 at 11:57
                                                  PM Eduardo Ochs <<a href="mailto:eduardoochs@gmail.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">eduardoochs@gmail.com</a>> wrote:<br>
                                                </div>
                                                <blockquote style="margin:0px 0px
                                                  0px
                                                  0.8ex;border-left:1px
                                                  solid
                                                  rgb(204,204,204);padding-left:1ex">
                                                  <div dir="ltr">
                                                    <div dir="ltr">Hi
                                                      Vanessa!<br>
                                                      Thanks! =) This
                                                      works in a
                                                      workspace,<br>
                                                      <br>
                                                        "Create a
                                                      SimpleSwitchMorph
                                                      with label
                                                      'Toggle'<br>
                                                            and a
                                                      SimpleButtonMorph
                                                      with label
                                                      'Flash'.<br>
                                                            The button
                                                      will be placed
                                                      below the switch."<br>
                                                        <br>
                                                        sm :=
                                                      SimpleSwitchMorph
                                                      new.<br>
                                                        sm openInWorld.<br>
                                                        bm :=
                                                      SimpleButtonMorph
                                                      new.<br>
                                                        bm openInWorld.<br>
                                                        bm position: bm
                                                      position + (0@32).<br>
                                                        <br>
                                                        "Three ways of
                                                      toggling the color
                                                      of the switch:"<br>
                                                        <br>
                                                        sm toggleState.<br>
                                                        <br>
                                                        bl := [ sm
                                                      toggleState ].<br>
                                                        bl value.<br>
                                                        <br>
                                                        bm target: bl.<br>
                                                        bm
                                                      actionSelector:
                                                      #value.<br>
                                                        bm
                                                      doButtonAction.<br>
                                                        <br>
                                                        "Two ways of
                                                      toggling the
                                                      switch after
                                                      1000ms:"<br>
                                                        <br>
                                                        sm addAlarm:
                                                      #toggleState
                                                      after: 1000.<br>
                                                        bm addAlarm:
                                                      #doButtonAction
                                                      after: 1000.<br>
                                                      <br>
                                                      but this doesn't:<br>
                                                      <br>
                                                        bm2 :=
                                                      SimpleButtonMorph
                                                      new.<br>
                                                        bm2 target: bl.<br>
                                                        bm2
                                                      actionSelector:
                                                      #value.<br>
                                                        bm2 addAlarm:
                                                      #doButtonAction
                                                      after: 1000.<br>
                                                      <br>
                                                      What is the right
                                                      way to add an
                                                      alarm to a morph
                                                      that is not shown
                                                      on<br>
                                                      the screen? Also,
                                                      can I create a new
                                                      invisible morph
                                                      every time that I<br>
                                                      want to run an
                                                      alarm? Are they
                                                      going to be
                                                      garbage collected?<br>
                                                      <br>
                                                        Thanks in
                                                      advance!<br>
                                                          Eduardo Ochs<br>
                                                          <a href="http://anggtwu.net/eev-squeak.html" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">http://anggtwu.net/eev-squeak.html</a><br>
                                                    </div>
                                                    <div dir="ltr"><br>
                                                    </div>
                                                    <br>
                                                    <div>
                                                      <div dir="ltr">On
                                                        Tue, 21 Feb 2023
                                                        at 02:16,
                                                        Vanessa
                                                        Freudenberg <<a href="mailto:vanessa@codefrau.net" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">vanessa@codefrau.net</a>> wrote:<br>
                                                      </div>
                                                      <blockquote style="margin:0px
                                                        0px 0px
                                                        0.8ex;border-left:1px
                                                        solid
                                                        rgb(204,204,204);padding-left:1ex">
                                                        <div dir="ltr">
                                                          <div>The best
                                                          way to do this
                                                          in Morphic is
                                                          with "alarms":</div>
                                                          <div><br>
                                                          </div>
                                                          <div>    self
                                                          addAlarm:
                                                          #changeKeyboardFocus
                                                          after: 5000.<br>
                                                          </div>
                                                          <div><br>
                                                          </div>
                                                          <div>which
                                                          would
                                                          execute the
                                                          morph's
                                                          changeKeyboardFocus
                                                          method 5
                                                          seconds later.</div>
                                                          <div><br>
                                                          </div>
                                                          <div>The way
                                                          of sleeping
                                                          you suggest is
                                                          possible too
                                                          but more
                                                          tricky,
                                                          since you
                                                          would have to
                                                          move your wait
                                                          code to an
                                                          extra process
                                                          to not block
                                                          the UI
                                                          process, but
                                                          then make sure
                                                          that the
                                                          actual work is
                                                          done in the UI
                                                          process again
                                                          (Morphic is
                                                          not
                                                          multithreaded,
                                                          although
                                                          Squeak is).</div>
                                                          <div><br>
                                                          </div>
                                                          <div>Vanessa</div>
                                                          <br>
                                                          <div>
                                                          <div dir="ltr">On
                                                          Mon, Feb 20,
                                                          2023 at 8:49
                                                          PM Eduardo
                                                          Ochs <<a href="mailto:eduardoochs@gmail.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">eduardoochs@gmail.com</a>>
                                                          wrote:<br>
                                                          </div>
                                                          <blockquote style="margin:0px
                                                          0px 0px
                                                          0.8ex;border-left:1px
                                                          solid
                                                          rgb(204,204,204);padding-left:1ex">
                                                          <div dir="ltr">Hi
                                                          list,<br>
                                                          <br>
                                                          a few days ago
                                                          I asked for
                                                          help on how to
                                                          send a
                                                          "synthetic"
                                                          keyboard<br>
                                                          event to a
                                                          morph, and
                                                          Karl Ramberg
                                                          gave me
                                                          exactly the
                                                          right hints in<br>
                                                          this thread:<br>
                                                          <br>
                                                          <a href="http://lists.squeakfoundation.org/pipermail/squeak-dev/2023-February/223473.html" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">http://lists.squeakfoundation.org/pipermail/squeak-dev/2023-February/223473.html</a><br>
                                                          <br>
                                                          My code is
                                                          ready except
                                                          for
                                                          documentation
                                                          and comments -
                                                          I'll work on<br>
                                                          that in the
                                                          next few days
                                                          and then post
                                                          the result
                                                          here and on
                                                          the<br>
                                                          wiki...<br>
                                                          <br>
                                                          ...but there's
                                                          a feature that
                                                          I want to add
                                                          to it that -
                                                          again =( -<br>
                                                          needs
                                                          something that
                                                          I'm not being
                                                          able to
                                                          discover by
                                                          myself. How do<br>
                                                          I write a line
                                                          of code that
                                                          waits for 5
                                                          seconds, sort
                                                          of like
                                                          running<br>
                                                          "sleep 5" in a
                                                          shell, and
                                                          that doesn't
                                                          block the rest
                                                          of the system?<br>
                                                          If I have that
                                                          I'll be able
                                                          to run these
                                                          two lines in a
                                                          workspace,<br>
                                                          <br>
                                                            self
                                                          mySleep: 5000.<br>
                                                            kf := self
                                                          currentHand
                                                          keyboardFocus.<br>
                                                          <br>
                                                          switch the
                                                          keyboard focus
                                                          to something
                                                          else by
                                                          clicking on
                                                          it, and<br>
                                                          then the
                                                          variable kf
                                                          will be set to
                                                          this
                                                          "something
                                                          else"...<br>
                                                          <br>
                                                          Thanks in
                                                          advance!<br>
                                                            Eduardo Ochs<br>
                                                            <a href="http://anggtwu.net/eev-squeak.html" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">http://anggtwu.net/eev-squeak.html</a><br>
                                                          <div><br>
                                                          </div>
                                                          </div>
                                                          <br>
                                                          </blockquote>
                                                          </div>
                                                        </div>
                                                        <br>
                                                      </blockquote>
                                                    </div>
                                                  </div>
                                                  <br>
                                                </blockquote>
                                              </div>
                                              <br>
                                            </blockquote>
                                          </div>
                                        </div>
                                      </div>
                                    </div>
                                    <br>
                                  </blockquote>
                                </div>
                              </div>
                              <br>
                            </div>
                          </blockquote>
                        </div>
                        <br>
                      </div>
                    </div>
                    <br>
                  </blockquote>
                </div>
              </div>
              <br>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class="moz-mime-attachment-header"></fieldset>
      <pre class="moz-quote-pre" wrap=""></pre>
    </blockquote>
  </div></blockquote>
                                        </div></div>