[Cuis-dev] Expanding on #noteCompilationOf:meta:

Phil B pbpublist at gmail.com
Sun Feb 2 12:22:19 PST 2020


Sorry for the delay... I had some convoluted dependencies on the old
methods that took me a while to untangle.  All set now.  Your proposed
changes look good to me.

On Wed, Jan 29, 2020 at 8:55 AM Juan Vuletich <juan at jvuletich.org> wrote:

> On 1/18/2020 8:07 PM, Phil B via Cuis-dev wrote:
> > Attached is a first cut of something I've wanted for a while: the
> > ability to capture method changes as they occur with the ability to
> > prevent them from happening if needed at a global level.  Basically
> > it's just paired methods of #isOkTo[Compile|Remove]:meta: and
> > #note[Compilation|Removal]Of:meta:.
> >
> > It's always bothered me how central the method  structure is yet
> > completely useless from the standpoint of having extensible
> > metadata... if I'm wrong re: extensibility, please let me know what
> > I've overlooked.  So barring that, these changes allow for things like
> > helping to keep a separate metadata structure in sync with method
> > changes.  The main requirement is to be able to track method adds,
> > changes and deletes to the image globally.  Not sure, but I was
> > thinking that this facility might also be useful for refactoring tools.
> >
> > One issue / odd thing I noticed: the removal methods only get called
> > instance-side due to ClassDescription #removeSelector: only getting
> > called on instance methods and you have to jump up to the Behavior
> > implementor for class methods.  That seems strange to me since method
> > compilation all appears to occur at the level of ClassDescription.  Is
> > there a reason removals need to be different from compilation in this
> > way?  (Not knowing the answer, I haven't fixed this issue in the
> > attached changeset)
>
> Hi Phil, folks,
>
> This is my proposal.
>
> When reviewing all this code, I found some dead code, and stuff crying
> for cleanup. Hence the attached #4035 and #4036.
>
> Then, I almost cloned your implementation of isOk, but with a different
> question for adding a new method than for modifying en existing one. I
> did #4037 with your initials, as it is your code after all.
>
> BTW, I don't quite get your last paragraph. Can you elaborate a bit on
> the issue, perhaps with steps to reproduce the offending behavior?
>
> If these changesets look ok for everybody, I'll push them to GitHub.
>
> Thanks,
>
> --
> Juan Vuletich
> www.cuis-smalltalk.org
> https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev
> https://github.com/jvuletich
> https://www.linkedin.com/in/juan-vuletich-75611b3
> @JuanVuletich
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20200202/c5718712/attachment.htm>


More information about the Cuis-dev mailing list