<div dir="ltr"><div dir="ltr">Hernan,</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jan 27, 2020 at 6:44 AM Hernan Wilkinson <<a href="mailto:hernan.wilkinson@10pines.com">hernan.wilkinson@10pines.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 dir="ltr">I was thinking today if adding the stop from compiling/removing a method would not be "over-design"...<div>I mean, if a tool wants to stop a method from being compiled/removed, wouldn't it be responsibility of that tool? </div><div>Let's say the file in wants to do that, then before compiling/removing a method it could check if it should do it or not for example.</div><div>I know that having that feature in the meta-model sounds to be more "re-usable", but again I'm thinking if that is the case.</div><div>In the case of announcing about changes I think it makes sense, it is a different use case and it proved to be useful</div><div>Anyway, do not kill me! I is just a thought :-)</div></div></blockquote><div><br></div><div>I'd have no problem with that approach if we made it easier to swap out the various tools for other ones. The problem currently is that people think nothing about hard coding references to classes and casually adding a dependency on yet another method in the class. If we abstracted away the class references and had more well defined APIs for interacting with each of the tools, such as the Browser for example, I'd be fine with that. (i.e. what you're proposing necessitates that I fork at least some of the tools. I'm OK if that's what we're saying is the way to go... just please make it a bit more feasible to do without effectively forking the entire image)</div><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 dir="ltr"><div><br></div><div>Hernan.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Jan 25, 2020 at 12:01 PM Hernan Wilkinson <<a href="mailto:hernan.wilkinson@10pines.com" target="_blank">hernan.wilkinson@10pines.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 dir="ltr">well... if you think that the "whole world" can do something different that they can right now for the normal means... :-)<div>I mean, I understand your point but in Smalltalk anybody can do anything, but I agree that the system change notifier was not meant for "asking", it is just a notifier as its name says.</div><div>On the other hand, using the notifier to ask makes it less coupled, as with the notifications...</div><div>Either solution is fine with me, each one has its pro and cons</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Jan 25, 2020 at 11:31 AM Juan Vuletich <<a href="mailto:juan@jvuletich.org" target="_blank">juan@jvuletich.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"><u></u>
<div bgcolor="#ffffff">
On 1/24/2020 4:34 PM, Phil B via Cuis-dev wrote:
<blockquote type="cite">
<div dir="ltr">
<div dir="ltr">I'm fine with that if that's what makes sense to
everyone. Ideally, the steps/stages I think we need to
consider are 1) 'is it OK to do what I want to do?', 2) 'I'm
about to do it', 3) 'it's done'. 3 is what we have
currently. 1 & 2 could be collapsed into one step (the
reason I did that with the #isOK* methods was that seemed to
be consistent to how other parts of the image, such as
Morphic, like to do similar things) I'm currently mainly
concerned with class and method changes but if there are other
things we should be looking at doing this for, let's try to
make sure we've considered them as well so we have a good
solution.</div>
<br>
</div>
</blockquote>
<br>
In general, I think it is ok to allow anybody to be notified of
something about to happen and/or just happened. I'm not so sure if
it is ok to allow anybody to prevent from (for example) a method
being compiled. Telling the whole world seems ok to me. Asking
permission to the whole world sounds like a bit too much. But I'm
not sure at all...<br>
<br>
Thanks,<br>
<pre cols="72">--
Juan Vuletich
<a href="http://www.cuis-smalltalk.org" target="_blank">www.cuis-smalltalk.org</a>
<a href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev" target="_blank">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a>
<a href="https://github.com/jvuletich" target="_blank">https://github.com/jvuletich</a>
<a href="https://www.linkedin.com/in/juan-vuletich-75611b3" target="_blank">https://www.linkedin.com/in/juan-vuletich-75611b3</a>
@JuanVuletich</pre>
<br>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Fri, Jan 24, 2020 at 2:15
PM Hernan Wilkinson <<a href="mailto:hernan.wilkinson@10pines.com" target="_blank">hernan.wilkinson@10pines.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 dir="ltr">With the SystemChangeNotifier (events), you
can get notified que a method was added, changed, removed,
etc., but you can not stop adding/changing or removing a
method from happening. That is the difference I see with
what you propose.
<div>We could "enhance" the system change notifier to add
that functionality, and I think that would be better
because it is more consisten with what the system does
right now and it would not be coupled with a class
hierarchy and no redefinition of methods would be
necessary.</div>
<div><br>
</div>
<div>If you ask me, I would enhance the system change
notifier</div>
<div><br>
</div>
<div>Hernan.</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Thu, Jan 23, 2020 at
6:56 PM Phil B <<a href="mailto:pbpublist@gmail.com" target="_blank">pbpublist@gmail.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 dir="ltr">
<div dir="ltr">A correction / clarification...</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Thu, Jan 23,
2020 at 4:35 PM Phil B <<a href="mailto:pbpublist@gmail.com" target="_blank">pbpublist@gmail.com</a>>
wrote:</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="ltr">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="ltr">
<div class="gmail_quote">
<div>I think this functionality is
interesting, I would add it making the
change of #compile:... (not signaling
an exception) and without the
implementation in Object class (I
would remove #noteCompilation... from
Object class too). </div>
</div>
</div>
</blockquote>
<div><br>
</div>
<div>Other than being a composite of
#methodAdded, #methodAddedInProtocol and
#methodChanged messages, do you see any
functional difference from what I'd get from
SystemChangeNotifier?</div>
<div> <br>
</div>
</div>
</div>
</blockquote>
<div><br>
</div>
<div>What I was trying to say/ask was 'do you see
anything that I can't functionally recreate from
what I'd get from SystemChangeNotifier?' (i.e.
yes, there's a difference between the mechanisms
but, unless I'm missing something, I think I can
get what I need using SystemChangeNotifier)<br>
</div>
</div>
</div>
</blockquote>
</div>
<br clear="all">
<div><br>
</div>
-- <br>
<div dir="ltr">
<div dir="ltr">
<div>
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal"><span style="font-weight:bold">Hernán
Wilkinson</span><br>
Agile Software
Development, Teaching
& Coaching</span></font></span></span></span></strong></span></div>
<div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal">Phone:
+54-011</span></font></span></span></span></strong></span><font size="2" face="tahoma, sans-serif">-4893-2057</font></div>
<div><strong style="font-family:tahoma,sans-serif;font-size:xx-small"><span style="font-size:8pt"><span style="font-size:small"><font size="2"><span style="font-weight:normal">Twitter:
@HernanWilkinson</span></font></span></span></strong></div>
<div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal">site: <a href="http://www.10pines.com/" style="color:rgb(17,65,112)" target="_blank">http://www.10Pines.com</a></span></font></span></span></span></strong></span></div>
<div><font face="tahoma, sans-serif"><span style="border-collapse:collapse">Address: Alem 896</span></font>,
Floor 6, Buenos Aires, Argentina</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
<br>
</div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal"><span style="font-weight:bold">Hernán Wilkinson</span><br>Agile Software Development, Teaching & Coaching</span></font></span></span></span></strong></span></div><div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal">Phone: +54-011</span></font></span></span></span></strong></span><font face="tahoma, sans-serif" size="2">-4893-2057</font></div><div><strong style="font-family:tahoma,sans-serif;font-size:xx-small"><span style="font-size:8pt"><span style="font-size:small"><font size="2"><span style="font-weight:normal">Twitter: @HernanWilkinson</span></font></span></span></strong></div><div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal">site: <a href="http://www.10pines.com/" style="color:rgb(17,65,112)" target="_blank">http://www.10Pines.com</a></span></font></span></span></span></strong></span></div><div><font face="tahoma, sans-serif"><span style="border-collapse:collapse">Address: Alem 896</span></font>, Floor 6, Buenos Aires, Argentina</div></div></div></div></div></div></div></div></div></div></div></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal"><span style="font-weight:bold">Hernán Wilkinson</span><br>Agile Software Development, Teaching & Coaching</span></font></span></span></span></strong></span></div><div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal">Phone: +54-011</span></font></span></span></span></strong></span><font face="tahoma, sans-serif" size="2">-4893-2057</font></div><div><strong style="font-family:tahoma,sans-serif;font-size:xx-small"><span style="font-size:8pt"><span style="font-size:small"><font size="2"><span style="font-weight:normal">Twitter: @HernanWilkinson</span></font></span></span></strong></div><div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal">site: <a href="http://www.10pines.com/" style="color:rgb(17,65,112)" target="_blank">http://www.10Pines.com</a></span></font></span></span></span></strong></span></div><div><font face="tahoma, sans-serif"><span style="border-collapse:collapse">Address: Alem 896</span></font>, Floor 6, Buenos Aires, Argentina</div></div></div></div></div></div></div></div></div></div></div></div>
</blockquote></div></div>