On Mon, Dec 16, 2002 at 03:39:52PM -0500, Miguel de Icaza wrote:
> Hello,
> 
> > Yesterday I have read an ca 1 years old article about .net again.
> > 
> > In this magazine there stood advantages and disadvantages of C# and .net 
> > (and things, what could be better) .
> > 
> > Some of the things, which the magazine have listed, what could be better is, 
> > that the CIL is not compatible to C++.
> > Not all C++-programs can be compiled to the CIL. The reason is, that C++ 
> > supports "Mehrfachvererbung" for example - the CIL dosen't.
> > ("Mehrfachvererbung" is a german word. And I don't know how it is called in 
> > english. Is it called "multi-heredity" ?)
> > 
> > So, is it possible, that Mono integrate this features in its CIL, which 
> > Microsoft haven't integrated?
> 
> Multiple-inheritance can be emulated on the CIL (C++ does this) and
> Eiffel.NET found an interesting trick to implement it, so there is no
> need to change the CIL.
> 
> Now, even in that case, I am more interested in remaining compatible to
> the Microsoft CIL than to do our own extensions.
> 
> But I am not shutting down your idea.  In fact, if someone is motivated
> enough, they can use Mono as a research platform to try out the idea, do
> a proof-of-concept implementation, and then they could propose this to
> the ECMA standards body.
> 
> I do not know enough about multiple-inheritance to have a strong
> opinion, but I know people who do have a pretty strong opinion against
> it, so you might want to address those issues as well.
> 
> 
> > But for completeness, here the "disadvantages" of C#, which there was 
> > listed:
> > - it is not possible to get more parameters by one function back
> 
> You can use `out' parameters.
> 
> > - no support for definitions of pre- and postconditions and invariants.
> 
> Brian posted a link yesterday about pre-conditions using attributes
> which was interesting.  It is not natively supported as Eiffel does.

I think that either the multiple inheritance and the design by contract
(preconditions, postconditions, invariants in all bodies (class, method,
loop, etc...)) are very useful. The multiple inheritance is also a great
advantage, not only for the implementation but for the object oriented
design too. At the end, I think that preconditions, postconditions,
invariants, etc... can be implemented with a few methods that can check
that all of that (classes, methods, etc...) are consistent.

See you,

    Pedro
 
-- 
Pedro Martinez Juli�
\  [EMAIL PROTECTED]
)|    [EMAIL PROTECTED]
/        http://yoros.cjb.net
Socio HispaLinux #311
Usuario Linux #275438 - http://counter.li.org
GnuPG public information:  pub  1024D/74F1D3AC
Key fingerprint = 8431 7B47 D2B4 5A46 5F8E  534F 588B E285 74F1 D3AC

Attachment: msg04937/pgp00000.pgp
Description: PGP signature

Reply via email to