Hi Frank,

so, which definition of pragmas I should follow? Declarative or executable?

From what you describe, I'm against it, they are just annotations (a way to convey programmer intention because the code itself is unable to do so).

I introduce annotations in a programming language when I can't do otherwise because: the language is deficient in expressing the correct abstractions; or the compiler is too dumb to deduce properties on its own.

Now, which one applies to Smalltalk pragmas?

Thierry

2015-02-06 11:29 GMT+01:00 Frank Shearar <frank.shearar@gmail.com>:


Pragmas don't execute. They're _data_. There is no "calls unknown
sender" because the don't execute.

Eliot's point is that pragmas _describe_, and then other systems act
on those descriptions.

They're just like Java or C# attributes, or Python decorators. Only
they're better, because Java/C# attributes can do anything, whereas
pragmas merely describe.

frank