www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Re: new DIP5: Properties 2

reply bearophile <bearophileHUGS lycos.com> writes:
Ary Borenszweig:
But, man, am I so excited to be able to overload my functions and templated
functions!<

The "support for fast and reliable build tools to the frontend" is a first step of one of the things people have asked for for a lot of time, so once in a while Walter listens to people, so it's not wise to stop asking things. Recently we have written a list of things to be done before D2 comes out of alpha state (and the top of the wish list there are Stack tracing and Reflection API). Overloading functions & templates was not asked by anyone. There are some things in the design of D1/D2 that aren't that useful, while there are some things that are quite useful but absent. The only way to remove the things that aren't much useful is to break backwards compatibility, this is hard to do in a language that's already in beta stage. I suggest Walter to write some real program using D1, programs that future D programmers may really want to write, for example using Descent. This may show him some of the things people ask for and why they ask for them. Also taking a look at C# and Scala will help (they aren't perfect, but they are modern and C# is designed for quite practical purposes). Bye, bearophile
Aug 01 2009
parent reply Arthur Lloyd <via google.com> writes:
bearophile Wrote:

Also taking a look at C# and Scala will help (they aren't perfect, but they are
modern and C# is designed for quite practical purposes).

Scala is built by impractical computer scientists, D is a masterpiece coming from the software engineering community. Is there really anything worth learning from it? If you implement features that come from a scientific language, laymen can't use D anymore or it becomes unusably slow. I've tried Scala and the language was too much different from C/C++/D to be useful in real world programming: def foo = 1 + 4 vs int foo() { return 1 + 4; } val foo: String = "bar" vs string foo = "bar";
Aug 03 2009
parent "Denis Koroskin" <2korden gmail.com> writes:
On Mon, 03 Aug 2009 14:40:20 +0400, Arthur Lloyd <via google.com> wrote:

 bearophile Wrote:

 Also taking a look at C# and Scala will help (they aren't perfect, but  
 they are modern and C# is designed for quite practical purposes).

Scala is built by impractical computer scientists, D is a masterpiece coming from the software engineering community. Is there really anything worth learning from it? If you implement features that come from a scientific language, laymen can't use D anymore or it becomes unusably slow. I've tried Scala and the language was too much different from C/C++/D to be useful in real world programming: def foo = 1 + 4 vs int foo() { return 1 + 4; } val foo: String = "bar" vs string foo = "bar";

I don't see that much of a difference. You just got used to C family languages, learn something new (Lisp, Haskel, Ruby, Erlang etc).
Aug 03 2009