OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

tosca-interop message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [tosca-interop] Background question on working assumptions about TOSCA types.


Hi Dale,

some inline comments from my perspective below ...

Regards,
Thomas

<tosca-interop@lists.oasis-open.org> wrote on 06.06.2013 20:16:17:

> From: Dale Moberg <dmoberg@axway.com>
> To: "tosca-interop@lists.oasis-open.org" <tosca-interop@lists.oasis-
> open.org>,
> Date: 06.06.2013 20:15
> Subject: [tosca-interop] Background question on working assumptions
> about TOSCA types.
> Sent by: <tosca-interop@lists.oasis-open.org>
>
> Hi,
>
> Last Monday someone brought up whether we should think about TOSCA
> types as something like JS prototypes or more like OO classes.
>
> This question made me realize that I did not know what we are/were/
> will be assuming about TOSCA types, but I hope it will be something
> simple and not involve us in something like the “Lambda cube”  and
> “Rank-N polymorphism” and the all the distinctions of the
> programming-language, type theorists behind Coq, ML, F, Haskell and the
like.
>
> Here is what I had been assuming we meant by TOSCA types:
>
> 1. types can have subtypes
> 2. there is inheritance  by subtypes.
> 3. subtypes inherit from at most one supertype (no multiple
> inheritance, no diamond)

Agree on all 3.

>
> Some things unclear to me from our documentation so far:
>
> 1. can anything (method,variable,value,default,etc.) be overridden
> in a subtype?

I did look at the spec, but from what I recall from writing most of it I
think that a subtype can override everything. In some cases, there are
constraints, though. For example, when a supertype defines a capability of
type A with name "mycap", a subtype can only refine "mycap" with a
capability of type B that derives from A.

> 2. if there are abstract types, how do we tell when a type can be
> the type of, for example, a given node template? (we have 3 levels
> now, is the first level abstract and the other two concrete enough
> to have instances?)

So in my mental model, a Node Template can always be of an abstract type.
You can only not directly instantiate it. A TOSCA container will have to
find a replacement for the abstract type at the latest during deployment.
That replacement must be a non-abstract type that derives from the abstract
type referenced by the Node Template.

>
> I reserve the right to ask a few more questions depending on what
> answers I hear!
>
> [Matt, I have not finished all your slides, and maybe the answers
> were implicit somewhere, but I wasn’t smart enough to extract them.]
>
> Bye
> Dale Moberg
>
>
>
>
>


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]