I was kind of limiting my thoughts to Perl:)
What about Aspect
There is (are?) concrete implementation(s) of AOP (Aspectj and ?). I don't know how they are implemented, but I suspect that it basically comes down to essentially the same as mixins/traits in that extra methods get attached directly or indirectly to the vtable.
My (also limited) understanding of AOP is that it is not really just for object composition (as mix-ins/traits are), and therefore not directly related to OOP (although you rarely see AOP without OOP).
As far as AOP implementation, it actually looks to me like Aspect is full of symbol-table madness, while AspectJ has an Aspect weaver which is essentially a compiler pre-processor.
Creating a new language that incorporated the cross-cutting concern (in AOP speak) as part of the core language would be a sixth.
Isn't that exactly what the :trait notation of P6 is doing?
Similar, but not exactly. But again, my understanding of both is limited, but I don't see them as being exactly the same.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
Outside of code tags, you may need to use entities for some characters:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
| & || & |
| < || < |
| > || > |
| [ || [ |
| ] || ] ||