[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Methods, Inheritance, Exceptions, etc. (was: Re: Methods in S MIng ?)



Juergen> CORBA IDL is a data definition language and thus similar in nature
to
Juergen> SMIng. Both, CORBA IDL and SMIng, have no concept of control flows
as
Juergen> they have no statements etc. - so I a bit confused why you put C++,
Juergen> CORBA and Java into one camp.

I think exceptions, C++, Java, and CORBA, are in practice associated 
with a different flow of control: "When designing your [IDL] interfaces, 
keep in mind that it is harder for a programmer to deal with exceptions 
than ordinary return values because exceptions break the normal flow of 
control" (Advanced CORBA Programming with C++, Michi Henning & Steve
Vinoski). 
In talking to a few people in the halls after the SMIng meeting in 
Minneapolis I got a pretty uniform (and confused) response when I 
mentioned the idea of putting exceptions in a modelling language.


> Looks like we are converging. So do you have a better term that is
> less confusing? BTW, the CORBA IDL spec (01-02-33) says:
> 
>      "Exception declarations permit the declaration of struct-like
>      data structures, which may be returned to indicate that an
>      exceptional condition has occured during the performance of a
>      request."

I think the need for a separate requirement is important.  As long
as the requirement fully spells out what is meant (the above sentence
is a good start), I'd be reluctantly comfortable with using the term
exceptions.  While it is too late to get the web page updated, I
figured that putting this in FNF (Frank Normal Form :) would be a
useful excercise to see if we've come to agreement or not:

#xx  Exception Condition Error Handling
Description: SMIng must allow specifying a structured set of information
             to be provided to the manager in the case of error conditions.
Motivation/Discussion: SPPI provides INSTALL-ERRORS as a way of 
             indicating error conditions when installing new rows.
             A similar, standardized approach at the model level for 
             capturing error information would be useful.

Cheers,
David