[Nitro] TRANS: Facets annotation problems

TRANS transfire at gmail.com
Tue Sep 19 21:14:19 EDT 2006

On 9/19/06, Jonathan Buch <john at oxyliquit.de> wrote:
> Hey.
> > Ummm... have you considered how such words might make me feel? Maybe
> > you should try writing it yourself to get some perspective.
> No I didn't, I feel worse now.
> Sorry, that was too rash.  I was still kind of under the impression
> of that magic box called annotations and didn't want to hurt any
> feelings.

Thanks, Jonathan. No need to feel bad. Lord knows, we all could use a
little more tact at times. Also, if my last comment about "writing it
yourself" came across as overly sarcastic, my apologies too. I
actually think you would gain some very interesting insights by trying
to write it. Annotations is one of those things that seems so simple
but actually turns out to have subtle complexities that make not as
straight-forward as one would like.

> The view from outside (besides the many ways to access annotations)
> is nice, but _very_ hard to understand (for me?).
> Thanks for answering the two questions in great detail.
> > Okay, well, I can do that if need be. But I think it is important for
> > other people to know how the Facets elements of Nitro work too. I
> > don't think it's good that I'm the only one.
> Yes, you right, I'll make an effort to understand better how that magic
> works.
> The problem with the something.ann.self.  I remember you saying that it
> doesn't work in the newest Facets version.  Would be great if it would
> work (again?) like in facets 1.4.5 since that would make migrating alot
> easier.

No problem. I looked at it today. And will keep at it until self works
properly again.

> In Og I found those two forms:
> * ann :self, {...}
> * ann self, {...}
> Are these any different?

Nope. Techincally they should do the same thing,

> How does the annotating of classes
> *  class Foo; ann :function, :s => 'a'; end
> differ from annotating objects.
> * obj.annotate ...

This would annotate the object itself, rather then the class.
(Actually I need to check to see if I coverd this in the new
implementaiton, it might be something left to do, thanks for
mentioning it.)

> By reading the code I found out (in facets 1.4.5) that obj.ann annotates
> the superclass?

Hmm... I think it actaully annotates the Singleton class. Yet this is
one of those things I've debated and have never felt 100% settled. The
other viable option is to annotate the object itself.

> I apologize again for having chosen rather bad words to express what I
> meant.

No worries. I welcome critque as it helps me work out the kinks. The
dog poo inference stunk though as poo tends to do ;-)


More information about the Nitro-general mailing list