On Thu, Feb 5, 2015 at 2:31 AM, Thierry Goubier <thierry.goub...@gmail.com>
wrote:

>
>
> 2015-02-05 10:55 GMT+01:00 Sven Van Caekenberghe <s...@stfx.eu>:
>
>> It is obviously a compromise (or a continuum) between abstractions and
>> performance.
>>
>
> I agree. With a special view in that we are in a sub domain where simple
> things well designed (Smalltalk, that is) are amazingly good at supporting
> complex designs.
>
>
>>
>> But there should remain a focus on efficiency (not just speed but also
>> memory), it is hard to fix these things years later.
>>
>
> And I like the fact that efficient code and design is often a pleasure to
> read and learn from :)
>
> Now, being radical: could we get rid of pragmas ? The only reason I see to
> them is that they allow extension by external packages, because we can't
> have methods which belong to two protocols (*).
>

They are a Smalltalk-centric way of adding arbitrary metadata to methods;
Smalltalk-centric in that a pragma is a Message instance, may be queried
for senders, performed, etc, and that it can be parsed using the standard
compiler (they add no new syntax).  They have been broadly used.  IME they
have simplified and reduced code where ever they have been used.  They
don't have to be there but they're a good thing.  Why do you want to get
rid of them?

(and yes, I'm biassed)


> Thierry
>
> (*) I tried to get rid of them in some of my stuff, where it is used in
> the same way GTInspector and GTSpooter uses pragmas, and I had to stop
> because of that feature. All other uses of pragmas are replaceable (and
> often, as in the gt stuff, redundant).
>

-- 
best,
Eliot

Reply via email to