<br><br><div class="gmail_quote">On Fri, Jan 28, 2011 at 10:38 AM, Casey Ransberger <span dir="ltr">&lt;<a href="mailto:casey.obrien.r@gmail.com">casey.obrien.r@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
+1<br>
<br>
It looks like an XML tag. This language is most intuitive to me FWIW.<br></blockquote><div><br></div><div>But it isn&#39;t.  It is a message pattern with literal arguments (a message with literal arguments and no receiver).  It has nothing to do with XML.  Having it as a message pattern means:</div>
<div>- one can search for references to the method tag by searching for senders of the message tag&#39;s selector</div><div>- one can provide implementation(s) of the selector and hence execute the method tag using perform</div>
<div><br></div><div>Hence method tags are better integrated in Smalltalk than in other languages; one can do meta-programming with them.  They&#39;re not merely annotations, they&#39;re executable annotations.  IMO the coolest uses of method tags are those that trigger some evaluation of the method tags by some method tag processor when methods containing method tags are either added or removed (compiled/deleted) from the system such as automatically adding an entry to a system menu when a method defining an action to be dispatched from the menu is added with a method tag that references the menu.  Using this approach one has to perform one action (compiling a method) not two (compiling the action method and modifying/compiling the menu definition method).</div>
<div><br></div><div>best</div><div>Eliot</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div><div></div><div class="h5"><br>
On Jan 28, 2011, at 7:00 AM, Andreas Raab &lt;<a href="mailto:andreas.raab@gmx.de">andreas.raab@gmx.de</a>&gt; wrote:<br>
<br>
&gt; On 1/28/2011 3:40 PM, Chris Cunnington wrote:<br>
&gt;&gt; &gt;Method annotations are not pragmas.<br>
&gt;&gt;<br>
&gt;&gt; It might be easier to say that method annotations never had a class to<br>
&gt;&gt; identify them with before Lukas created class<br>
&gt;&gt; Pragma in 2006.<br>
&gt;<br>
&gt; Unfortunately, that neither changes the statement nor does it make the name any better :) (and fwiw, I am in favor of Travis&#39; &quot;method tag&quot; terminology)<br>
&gt;<br>
&gt; Cheers,<br>
&gt;  - Andreas<br>
&gt;<br>
<br>
</div></div></blockquote></div><br>