www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Re: Safer casts

reply Dee Girl <deegirl noreply.com> writes:
Yigal Chripun Wrote:

 the idea is of course take the best from each language and combine it to
 something even better.
 BTW, you really should take a look at Eiffel. for example, it has
 multiple-inheritance implemented in a completely different way than C++
 avoiding most of c++ problems with it. they have many novel ideas there
 that D can and should learn from.
 
 My perfect collection framework would be based on the Eiffel design,
 avoiding problems in the Java model and problems in the C++ model.

It is fortunate in my humble opinion that the designers of D think otherwise. In my experience Eiffel is the worst of languages. I worked with Eiffel one project. It was very unsafe for a compiled language. It has covariant function arguments and covariant arrays! At least Java and D made only one mistake not two. It has problems of dynamic languages and problems of static languages but not many advantages of them. It is not surprising Eiffel is considered bad by my professors and also by people in the industry. Dee Girl
May 11 2008
parent Yigal Chripun <yigal100 gmail.com> writes:
Dee Girl wrote:
 Yigal Chripun Wrote:
 
 the idea is of course take the best from each language and combine
 it to something even better. BTW, you really should take a look at
 Eiffel. for example, it has multiple-inheritance implemented in a
 completely different way than C++ avoiding most of c++ problems
 with it. they have many novel ideas there that D can and should
 learn from.
 
 My perfect collection framework would be based on the Eiffel
 design, avoiding problems in the Java model and problems in the C++
 model.

It is fortunate in my humble opinion that the designers of D think otherwise. In my experience Eiffel is the worst of languages. I worked with Eiffel one project. It was very unsafe for a compiled language. It has covariant function arguments and covariant arrays! At least Java and D made only one mistake not two. It has problems of dynamic languages and problems of static languages but not many advantages of them. It is not surprising Eiffel is considered bad by my professors and also by people in the industry. Dee Girl

I was only referring to Eiffel's collection framework which i think is a good design. I noted that Eiffel has a different implementation of MI than c++ but that doesn't mean i want MI in D. I like the current design of interfaces and mixins in D instead of MI. also, I'm familiar with the covariance issues in Eiffel. I also do not like it's strange(IMO) syntax. fact is nothing is perfect and D does already borrow some concepts from Eiffel like DBC. sure, Eiffel has it problems, all languages has problems, and the industry (or your professors for that matter) are irrelevant since there are hundreds of different languages and non of which is the dominant one. this only shows that there are many ways and styles for programing and there are personal preferences involved. your professor may prefer one solution while mine prefers another, both can be valid. there are many academic languages that are ignored by the industry while it prefers using different languages. would you consider cobol a good language? the only objective way I know of to measure success of programming languages is the size of the beard of the language creators. there's a thread with a link to an article about that in the NG. anyway, back to topic. I was talking about Eiffel's collection framework and I was saying we should take the best from each language, meaning that specific initial design which could be improved since it's very flexible but can be complex for users since Eiffel uses MI and doesn't have anything like interfaces. D can take the flexibility of the design and improve it's user friendliness. of course, this entire post is my opinion only. feel free to disagree. also, off topic, have you ever heard of the programming language Icon?
May 11 2008