Here's my 2ct: 1. Pragmas aren't actually pragmas. They do not instruct the compiler to do things (_except_ for primitive: and apicall:, but these are now outliers). They rather add metadata to a (compiled) method. 2. The 'thing' (ie, class) should probably be named MethodAnnotation 3. We can have the cake and eat it to: Rename Pragma -> MethodAnnotation. Make Pragma a new subclass of MethodAnnotation. Make MethodAnnotation implement #methodSelector #annotationSelector (or #selector, if it must be) Make Pragma implement #selector #keywords That way, We can nuke Pragma (with its 'old' interface) when the time is right but already us the new variant without introducing problems. Best regards -Tobias On 15.11.2016, at 20:33, Dale Henrichs <dale.henrichs@gemtalksystems.com> wrote:
We are integrating Pragma into the GemStone base for GemStone 3.4.0, so when the dust settles over the changes I will integrate them into GemStone 3.4.0 ...
Dale
On 11/14/2016 11:18 AM, Torsten Bergmann wrote:
I was hit by this today already as it made Catalog slow like hell (which I fixed): https://pharo.fogbugz.com/f/cases/19342/.
+1 for the short-term revert +10 for aligning Squeak and Pharo with a more intention revealing name
Thx T.
Gesendet: Montag, 14. November 2016 um 19:49 Uhr Von: "Eliot Miranda" <eliot.miranda@gmail.com> An: "Pharo Development List" <pharo-dev@lists.pharo.org> Cc: squeak-dev@lists.squeakfoundation.org Betreff: Re: [Pharo-dev] Pragma keyword / selector / methodSelector
Hi All,
can I suggest that Pharo and Squeak coordinate on a change. First, #selector is bad because it is ambiguous. As already determined #keyword is awful because it's false (it is a message selector, not just a keyword). So could we
- use #methodSelector and #pragmaSelector for the next few years, and deprecate #selector and #keyword?
- after a suitable time use #selector to mean #pragmaSelector because that's the most useful abbreviation (in my experience I most often access #pragmaSelector)?
_,,,^..^,,,_ (phone)
On Nov 14, 2016, at 6:37 AM, Esteban A. Maringolo <emaringolo@gmail.com> wrote:
2016-11-14 11:27 GMT-03:00 phil@highoctane.be <phil@highoctane.be>:
Breaking Metacello in Pharo 6: Not good. Revert: +1 Breaking Metacello in any version = Not good.
Metacello is very backward compatible but breaking pragma semantics would require a rewrite of many configurations that work okay today and would require a new version of Metacello that contemplates the new selectors based on some criteria.
Regards!
Esteban A. Maringolo