Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » B3 » advice in b3
advice in b3 [message #486668] Fri, 18 September 2009 14:45 Go to next message
Henrik Lindberg is currently offline Henrik LindbergFriend
Messages: 2500
Registered: July 2009
Senior Member
Hi,
I have been looking at how to handle advice in b3.

In Buckminster advice is available in a CQUERY (advisor nodes), but once
the query is executed and the components have been materialized, the
advice is no longer applicable (unless it left side effects in what was
actually materialized).

Also in Buckminster, the MSPEC is providing advice to materialization.

I would like to have a single advice mechanism in b3. I think it can
work like this:

- All actions (such as import, invoke, etc.) can specify the advice to
use. (import advice == Buckminster CQUERY advisor nodes + MSPEC)
- Advice is specified by using a query mechanism similar to XQuery
(instead of name pattern in Buckminster advisor nodes and mspec).
- A piece of advice (advisor), simply needs the result to have a
suitable interface.

The SAP guys are working on query support for EMF - which seems to be
useful. Unknown though how far they are, and if they plan a concrete
query syntax (like XQuery). Does not seem terribly difficult to parse a
XQuery into the implementation of EMF query.

Advice can then be applied in a much more precise way.

Comments?
- henrik
Re: advice in b3 [message #486796 is a reply to message #486668] Sat, 19 September 2009 06:17 Go to previous messageGo to next message
Thomas Hallgren is currently offline Thomas HallgrenFriend
Messages: 3229
Registered: July 2009
Senior Member
On 09/18/2009 04:45 PM, Henrik Lindberg wrote:
> Hi,
> I have been looking at how to handle advice in b3.
>
> In Buckminster advice is available in a CQUERY (advisor nodes), but once
> the query is executed and the components have been materialized, the
> advice is no longer applicable (unless it left side effects in what was
> actually materialized).
>
> Also in Buckminster, the MSPEC is providing advice to materialization.
>
> I would like to have a single advice mechanism in b3. I think it can
> work like this:
>
> - All actions (such as import, invoke, etc.) can specify the advice to
> use. (import advice == Buckminster CQUERY advisor nodes + MSPEC)
> - Advice is specified by using a query mechanism similar to XQuery
> (instead of name pattern in Buckminster advisor nodes and mspec).
> - A piece of advice (advisor), simply needs the result to have a
> suitable interface.
>
> The SAP guys are working on query support for EMF - which seems to be
> useful. Unknown though how far they are, and if they plan a concrete
> query syntax (like XQuery). Does not seem terribly difficult to parse a
> XQuery into the implementation of EMF query.
>
> Advice can then be applied in a much more precise way.
>
> Comments?
> - henrik

Perhaps a generic mechanism like that is too generic? Wouldn't we like to have more control over where advice can be
applied? Perhaps not.

I'm thinking about P2 where you have specific targeted advices like VersionAdvice etc. I was envisioning ActionAdvice
and similar. But perhaps a model query mechanism is what we should build it on.

- thomas
Re: advice in b3 [message #486804 is a reply to message #486796] Sat, 19 September 2009 10:34 Go to previous message
Henrik Lindberg is currently offline Henrik LindbergFriend
Messages: 2500
Registered: July 2009
Senior Member
Comments inline...
- henrik

Thomas Hallgren wrote:
> On 09/18/2009 04:45 PM, Henrik Lindberg wrote:
>> Hi,
>> I have been looking at how to handle advice in b3.

>> The SAP guys are working on query support for EMF - which seems to be
>> useful. Unknown though how far they are, and if they plan a concrete
>> query syntax (like XQuery). Does not seem terribly difficult to parse a
>> XQuery into the implementation of EMF query.
>>
>> Advice can then be applied in a much more precise way.
>>
>
> Perhaps a generic mechanism like that is too generic? Wouldn't we like
> to have more control over where advice can be applied? Perhaps not.
>
Yes, and no - we want a flexible query mechanism to specify exactly
where the advice should be applied, but advice can only be applied to
'joinpoints' (to use the AOP term).

A piece of advice operates on interfaces. I expect most of the advice to
be for some particular interface. Illegal advice would be ignored and
produce warnings (or errors).

> I'm thinking about P2 where you have specific targeted advices like
> VersionAdvice etc. I was envisioning ActionAdvice and similar. But
> perhaps a model query mechanism is what we should build it on.
>
That is what I am proposing - generic query and specific advice.

> - thomas
Re: advice in b3 [message #577614 is a reply to message #486668] Sat, 19 September 2009 06:17 Go to previous message
Thomas Hallgren is currently offline Thomas HallgrenFriend
Messages: 3229
Registered: July 2009
Senior Member
On 09/18/2009 04:45 PM, Henrik Lindberg wrote:
> Hi,
> I have been looking at how to handle advice in b3.
>
> In Buckminster advice is available in a CQUERY (advisor nodes), but once
> the query is executed and the components have been materialized, the
> advice is no longer applicable (unless it left side effects in what was
> actually materialized).
>
> Also in Buckminster, the MSPEC is providing advice to materialization.
>
> I would like to have a single advice mechanism in b3. I think it can
> work like this:
>
> - All actions (such as import, invoke, etc.) can specify the advice to
> use. (import advice == Buckminster CQUERY advisor nodes + MSPEC)
> - Advice is specified by using a query mechanism similar to XQuery
> (instead of name pattern in Buckminster advisor nodes and mspec).
> - A piece of advice (advisor), simply needs the result to have a
> suitable interface.
>
> The SAP guys are working on query support for EMF - which seems to be
> useful. Unknown though how far they are, and if they plan a concrete
> query syntax (like XQuery). Does not seem terribly difficult to parse a
> XQuery into the implementation of EMF query.
>
> Advice can then be applied in a much more precise way.
>
> Comments?
> - henrik

Perhaps a generic mechanism like that is too generic? Wouldn't we like to have more control over where advice can be
applied? Perhaps not.

I'm thinking about P2 where you have specific targeted advices like VersionAdvice etc. I was envisioning ActionAdvice
and similar. But perhaps a model query mechanism is what we should build it on.

- thomas
Re: advice in b3 [message #577643 is a reply to message #486796] Sat, 19 September 2009 10:34 Go to previous message
Henrik Lindberg is currently offline Henrik LindbergFriend
Messages: 2500
Registered: July 2009
Senior Member
Comments inline...
- henrik

Thomas Hallgren wrote:
> On 09/18/2009 04:45 PM, Henrik Lindberg wrote:
>> Hi,
>> I have been looking at how to handle advice in b3.

>> The SAP guys are working on query support for EMF - which seems to be
>> useful. Unknown though how far they are, and if they plan a concrete
>> query syntax (like XQuery). Does not seem terribly difficult to parse a
>> XQuery into the implementation of EMF query.
>>
>> Advice can then be applied in a much more precise way.
>>
>
> Perhaps a generic mechanism like that is too generic? Wouldn't we like
> to have more control over where advice can be applied? Perhaps not.
>
Yes, and no - we want a flexible query mechanism to specify exactly
where the advice should be applied, but advice can only be applied to
'joinpoints' (to use the AOP term).

A piece of advice operates on interfaces. I expect most of the advice to
be for some particular interface. Illegal advice would be ignored and
produce warnings (or errors).

> I'm thinking about P2 where you have specific targeted advices like
> VersionAdvice etc. I was envisioning ActionAdvice and similar. But
> perhaps a model query mechanism is what we should build it on.
>
That is what I am proposing - generic query and specific advice.

> - thomas
Previous Topic:Re: b3 - resolver model
Next Topic:Properties model r10647
Goto Forum:
  


Current Time: Mon Nov 24 20:25:28 GMT 2014

Powered by FUDForum. Page generated in 0.13853 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software