Talk:Metaobject

From Wikipedia, the free encyclopedia
Jump to: navigation, search

[edit] MOPs in Java?

Do Java's java.lang.reflect.* classes implement a limited, if any, form of a MOP? Or is intercessive reflection an essential requirement? --Wouter Lievens 13:08, 1 May 2005 (UTC)

I would say that, no, the java.lang.reflect does not implement a mop in any sense. It is purely a way of performing reflection. A mop, would, for example, allow a programmer to alter the way inheritance is implemented, or alter the way dynamic dispatch works. Providing a standard means for (meta-)programmers to change the garbage collection algorithm of a java implementation is another example of what a mop could do. --Andrew Eisenberg 23:08, 5 May 2005 (UTC)

[edit] Aspect orientation

The lack of a meta-object protocol in languages such as Java is one of the motives for the development of aspect-oriented programming.

I disagree with this comment from the main page. AOP came about as a way to modularize crosscutting concerns, it has nothing to do with not having a mop in Java. It is true that a mop is one way to implement an aop language. It's also true that the many people who worked on early mop implementations are now working on early aop implementations. A better way of saying this would be:

A metaobject protocol is one way to implement aspect-oriented programming languages. Many of the early founders of MOPs, including Gregor Kiczales have since moved on to be the primary advocates for aspect-oriented programming.

[edit] References needed

It is real nice that those references are included at the bottom. But please note that it is better to use <ref></ref>.

When I altered the article I did the following:

  • More headlines, improving readability
  • Added the <references/> tag, as it should be
  • Kept the original references, to help reminding.

I must say that the article is more about Metaobject protocol than metaobject. And it is better to get references from other places than wikipedia.

Daanie92 (talk) 00:50, 4 August 2009 (UTC)

Personal tools
Namespaces

Variants
Actions
Navigation
Interaction
Toolbox
Print/export