Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-04 Thread Denis Kudriashov
2017-10-04 14:43 GMT+02:00 Guillermo Polito : > > > >> >>> I mean, I understand we can use the class state to initialize the >>> annotation. But the fact that the annotation is cached after its first >>> instantiation means that the annotation will not necessarily

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-04 Thread Denis Kudriashov
2017-10-04 14:34 GMT+02:00 Henrik Sperre Johansen < henrik.s.johan...@veloxit.no>: > Denis Kudriashov wrote > >> Would it? > >> With pure method tags, you'd do something like: > >> SomeClass >> #renamePackage: aPackage > >> > > >> > > category: 'Package' > >> order: 25 > >> shortcut: #($r

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-04 Thread Guillermo Polito
On Wed, Oct 4, 2017 at 10:51 AM, Denis Kudriashov wrote: > 2017-10-04 9:48 GMT+02:00 Guillermo Polito : > >> I'd even call them First class pragmas from that point of view :P >> > > Yes. > But we decided avoid pragma related names here. Because in

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-04 Thread Henrik Sperre Johansen
Denis Kudriashov wrote > 2017-10-04 11:56 GMT+02:00 Henrik Sperre Johansen < > henrik.s.johansen@ >>: > >> Denis Kudriashov wrote >> > Generally it is same like having pragma with parameters. >> > But with annotation you are not restricted by literal objects. So >> > annotation parameters can

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-04 Thread Denis Kudriashov
2017-10-04 11:56 GMT+02:00 Henrik Sperre Johansen < henrik.s.johan...@veloxit.no>: > Denis Kudriashov wrote > > Generally it is same like having pragma with parameters. > > But with annotation you are not restricted by literal objects. So > > annotation parameters can be anything. > > > > And it

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-04 Thread Henrik Sperre Johansen
Denis Kudriashov wrote > 2017-10-04 9:48 GMT+02:00 Guillermo Polito > guillermopolito@ > : > >> I'd even call them First class pragmas from that point of view :P >> > > Yes. > But we decided avoid pragma related names here. Because in future it can > be > possible to add normal pragmas into

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-04 Thread Denis Kudriashov
2017-10-04 9:48 GMT+02:00 Guillermo Polito : > I'd even call them First class pragmas from that point of view :P > Yes. But we decided avoid pragma related names here. Because in future it can be possible to add normal pragmas into the class definition. > > I wonder

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-04 Thread Guillermo Polito
I'd even call them First class pragmas from that point of view :P I wonder what are the side-effects of instantiating the annotation yourself in a method. specialAnnotationExample ^MySpecialAnnotation new I mean, I understand we can use the class state to initialize the annotation. But

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-03 Thread Sean P. DeNigris
Denis Kudriashov wrote > If you will use method pragma then you will repeat logic of this library: > In your code you will need... So it sounds like it's pragmas++ - the functionality of pragmas plus some other stuff you may need that you'd have to roll on your own - Cheers, Sean -- Sent

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-03 Thread Denis Kudriashov
2017-10-03 16:15 GMT+02:00 Sean P. DeNigris : > Denis Kudriashov wrote > > I thought I explained it in my blog... But I know that I am a bad writer. > > Ah, sorry I forgot to re-read the blog and was trying to refresh my > understanding just based on this thread. I wouldn't

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-03 Thread Sean P. DeNigris
Denis Kudriashov wrote > I thought I explained it in my blog... But I know that I am a bad writer. Ah, sorry I forgot to re-read the blog and was trying to refresh my understanding just based on this thread. I wouldn't say the post was poorly written, just seemed to assume a prior familiarity

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-03 Thread Denis Kudriashov
2017-10-03 14:38 GMT+02:00 Sean P. DeNigris : > Denis Kudriashov wrote > > I also realized that this library automatically adds annotations to > > packages because we are now able annotate manifest classes > > This all sounds very cool, but would you mind explaining the

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-03 Thread Sean P. DeNigris
Denis Kudriashov wrote > I also realized that this library automatically adds annotations to > packages because we are now able annotate manifest classes This all sounds very cool, but would you mind explaining the motivation a bit? For example, isn't a manifest class itself meta-information

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-03 Thread Denis Kudriashov
I implement query for annotations of concrete class. So right now if you will do MyFrameworkAnnotation registeredInstances it will return only MyFrameworkAnnotation instances. It will not include any MyConcreteAnnotation instance. We can change this part if it is better to work with all

Re: [Pharo-dev] [Ann] Class meta annotations

2017-10-03 Thread Guillermo Polito
Ok, I'm back from vacations so I'll give a comment other than what I did :P. First I like it. Second, how does it work with respect to inheritance? I mean, if I have for example: ClassAnnotation subclass: MyFrameworkAnnotation. And then MyFrameworkAnnotation subclass: MyConcreteAnnotation1.

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-29 Thread Stephane Ducasse
tx! On Fri, Sep 29, 2017 at 9:58 AM, Denis Kudriashov wrote: > > 2017-09-28 21:12 GMT+02:00 Stephane Ducasse : > >> I would not use meta because you would not write annotationAnnotations :) >> and annotations is meta by its name. >> >>

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-29 Thread Denis Kudriashov
2017-09-28 21:12 GMT+02:00 Stephane Ducasse : > I would not use meta because you would not write annotationAnnotations :) > and annotations is meta by its name. > > classAnnotation is much better than metaAnnotation > Done. > > Stef > > > On Thu, Sep 28, 2017 at 5:40

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-28 Thread Stephane Ducasse
Yes. On Thu, Sep 28, 2017 at 6:17 PM, Denis Kudriashov wrote: > 2017-09-25 17:57 GMT+02:00 Denis Kudriashov : > >> 2017-09-25 17:38 GMT+02:00 Stephane Ducasse : >> >>> I agree with guille. We should just called them class

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-28 Thread Stephane Ducasse
Thanks On Thu, Sep 28, 2017 at 6:36 PM, Denis Kudriashov wrote: > 2017-09-28 18:17 GMT+02:00 Denis Kudriashov : > >> 2017-09-25 17:57 GMT+02:00 Denis Kudriashov : >> >>> 2017-09-25 17:38 GMT+02:00 Stephane Ducasse

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-28 Thread Stephane Ducasse
I would not use meta because you would not write annotationAnnotations :) and annotations is meta by its name. classAnnotation is much better than metaAnnotation Stef On Thu, Sep 28, 2017 at 5:40 PM, Denis Kudriashov wrote: > So I renamed it to ClassAnnotation with all

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-28 Thread Denis Kudriashov
2017-09-28 18:17 GMT+02:00 Denis Kudriashov : > 2017-09-25 17:57 GMT+02:00 Denis Kudriashov : > >> 2017-09-25 17:38 GMT+02:00 Stephane Ducasse : >> >>> I agree with guille. We should just called them class annotations. >>> >>>

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-28 Thread Denis Kudriashov
2017-09-25 17:57 GMT+02:00 Denis Kudriashov : > 2017-09-25 17:38 GMT+02:00 Stephane Ducasse : > >> I agree with guille. We should just called them class annotations. >> >> Denis what is a declared instance (is it an object returned by the method >>

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-28 Thread Denis Kudriashov
So I renamed it to ClassAnnotation with all related names. But I keep meta prefix in #metaAnnotations Class extension to avoid general name: MyClass metaAnnotations You can check updated readme for details https://github.com/dionisiydk/ClassAnnotation 2017-09-26 17:31 GMT+02:00 Stephane

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-26 Thread Stephane Ducasse
;) On Tue, Sep 26, 2017 at 1:28 PM, Ben Coman wrote: > Shhh... The first rule of meta-club is we don't talk about meta-club. > > > cheers -ben > > > On Mon, Sep 25, 2017 at 11:09 PM, Guillermo Polito < > guillermopol...@gmail.com> wrote: > >> Why calling them

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-26 Thread Stephane Ducasse
I would prefer to remove the meta. because class instance variables are not class meta instance variables :) On Mon, Sep 25, 2017 at 5:59 PM, Marcus Denker wrote: > >> On 25 Sep 2017, at 17:38, Stephane Ducasse wrote: >> >> I agree with guille.

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-26 Thread Stephane Ducasse
Effective means instances. Because I do not understand what declared are. On Mon, Sep 25, 2017 at 5:57 PM, Denis Kudriashov wrote: > 2017-09-25 17:38 GMT+02:00 Stephane Ducasse : > >> I agree with guille. We should just called them class

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-26 Thread Ben Coman
Shhh... The first rule of meta-club is we don't talk about meta-club. cheers -ben On Mon, Sep 25, 2017 at 11:09 PM, Guillermo Polito < guillermopol...@gmail.com> wrote: > Why calling them meta-annotation and not just annotation? Annotations are > in general already meta :) > > On Mon, Sep 25,

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-26 Thread Marcus Denker
> On 26 Sep 2017, at 10:45, Damien Pollet wrote: > > +1 just call them class annotations. "annotation" itself already means > "meta-information" > > What are class properties ? You can say: Object propertyAt: #hello put: true. e.g instead of checking if the name

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-26 Thread Denis Kudriashov
2017-09-26 10:45 GMT+02:00 Damien Pollet : > +1 just call them class annotations. "annotation" itself already means > "meta-information" > > What are class properties ? > Any class has dictionary of arbitrary properties: MyClass propertyAt: #testKey put: #testValue >

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-26 Thread Damien Pollet
+1 just call them class annotations. "annotation" itself already means "meta-information" What are class properties ? How do annotations relate to Magritte? I'm guessing Magritte descriptions are a specific kind of annotation already, right? About #declaredInstances: you could do

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-25 Thread Sean P. DeNigris
Denis Kudriashov wrote > Also I would like to thank Marcus who helps me realize this concept in > Commander and Calypso which I start simplify with this library. Embarrassingly, I'm not quite clear on what this all means so I'll be eager to hear the results of the case study with Commander and

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-25 Thread Denis Kudriashov
I also realized that this library automatically adds annotations to packages because we are now able annotate manifest classes 2017-09-25 17:01 GMT+02:00 Denis Kudriashov : > Hi. > > I glad to present one class package which introduces reusable mechanism > for first class

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-25 Thread Marcus Denker
> On 25 Sep 2017, at 17:38, Stephane Ducasse wrote: > > I agree with guille. We should just called them class annotations. > The problem that I see is that people will confuse them with per class properties (and pragmas, should we add them). If I hear “class

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-25 Thread Denis Kudriashov
2017-09-25 17:38 GMT+02:00 Stephane Ducasse : > I agree with guille. We should just called them class annotations. > > Denis what is a declared instance (is it an object returned by the method > having the annotation) > but can we find a better name. > My idea that the

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-25 Thread Stephane Ducasse
I agree with guille. We should just called them class annotations. Denis what is a declared instance (is it an object returned by the method having the annotation) but can we find a better name. may be effectiveInstances? On Mon, Sep 25, 2017 at 5:09 PM, Guillermo Polito

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-25 Thread Denis Kudriashov
2017-09-25 17:09 GMT+02:00 Guillermo Polito : > Why calling them meta-annotation and not just annotation? Annotations are > in general already meta :) > First of all we can rename it. We discussed name with Marcus. And our feeling was that simple "class annotation"

Re: [Pharo-dev] [Ann] Class meta annotations

2017-09-25 Thread Guillermo Polito
Why calling them meta-annotation and not just annotation? Annotations are in general already meta :) On Mon, Sep 25, 2017 at 5:01 PM, Denis Kudriashov wrote: > Hi. > > I glad to present one class package which introduces reusable mechanism > for first class annotations. >

[Pharo-dev] [Ann] Class meta annotations

2017-09-25 Thread Denis Kudriashov
Hi. I glad to present one class package which introduces reusable mechanism for first class annotations. The project can be found on github https://github.com/dionisiydk/ClassMetaAnnotation. And I tried to describe why it is needed in my blog