CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Results 1 to 12 of 12

Thread: D

  1. #1
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    18

    D

    Hello. Didn't find a similar topic, so....

    I was wondering what you people -- especially the gurus 'round here -- think about this language: http://www.digitalmars.com/d/ .

    Personally, I think it sounds like a very attractive language. Too bad there isn't much support for it (yet?).
    Emotion is thus peace is not.

  2. #2
    Join Date
    Mar 2002
    Location
    St. Petersburg, Florida, USA
    Posts
    12,125

    Re: D

    I have done some work with it, and it does have some nice features. Alas, a language without a major support structure behind it is very unlikely to gain any mainstream acceptance.

    At last count [about 3 years ago] I totaled at least 87 different languages (counting significantly different dialects) that I have had at least some direct experience with over the years. Fewer than 15 of them accounted for 95%++ of the programming have done in nearly 35 years.
    TheCPUWizard is a registered trademark, all rights reserved. (If this post was helpful, please RATE it!)
    2008, 2009,2010
    In theory, there is no difference between theory and practice; in practice there is.

    * Join the fight, refuse to respond to posts that contain code outside of [code] ... [/code] tags. See here for instructions
    * How NOT to post a question here
    * Of course you read this carefully before you posted
    * Need homework help? Read this first

  3. #3
    Join Date
    Oct 2002
    Location
    Singapore
    Posts
    3,128

    Re: D

    It is a programming language with a some nice features. However, like many other nice languages, not many people are using it. This is due to many factors like no strong marketing (unlike MS), companies have already heavily invested on tools and code written in earlier languages (e.g. C, it is still used in many embedded application), etc. In other words, these languages have not gain enough critical mass to start a programming language 'revolution'.

    Anyway, it is always nice to look at these new languages so that we can pick up something useful and put that into our code.
    quoted from C++ Coding Standards:

    KISS (Keep It Simple Software):
    Correct is better than fast. Simple is better than complex. Clear is better than cute. Safe is better than insecure.

    Avoid magic number:
    Programming isn't magic, so don't incant it.

  4. #4
    Join Date
    Feb 2005
    Location
    "The Capital"
    Posts
    5,306

  5. #5
    Join Date
    Aug 1999
    Location
    <Classified>
    Posts
    6,882

    Re: D

    I have'nt yet seen any company using it for their product development.
    Regards,
    Ramkrishna Pawar

  6. #6
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    18

    Re: D

    Quote Originally Posted by exterminator
    That's a lot o' patience required there, heh heh
    Emotion is thus peace is not.

  7. #7
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    18

    Re: D

    I have a question: do you think D will overthrow C++, or will C++ ever be overthrown and if so which language would replace it? Or will C++ be used for a long time to come even if it hypothetically would be replaced in the future?


    I found a nice comparison list, by the way if anyone's interested: http://www.prowiki.org/wiki4d/wiki.cgi?LanguagesVersusD


    Cheers
    Emotion is thus peace is not.

  8. #8
    Join Date
    Feb 2005
    Location
    "The Capital"
    Posts
    5,306

    Re: D

    That comparison is flawed. The list is very long but here are some of the wrong statements made there.

    Complex and Imaginary - C++ library supports complex types (<complex>)

    Hash (C++ has unordered_map in tr1 that will be part of C++ 0x - is part by dinkumware STL, gcc, and some other libraries provide hash based collections as well),

    Function delegates - C++ as well as C have function pointers, function objects,

    Function literals - don't know what they are pointing to - but platform based dlsym and variants exist where you can get an exported function's pointer using its name.

    Inner classes - C++ has them as well

    Generics - C++ doesn't have them (not considering C++/CLI that has them)

    Reflection/Introspection - C++ has RTTI - there are libraries with more advanced features like xRTTI (extended RTTI).

    Modules/Namespaces - namespaces are supported.

    array bounds checking - not inbuilt but you can have classes like vector do that. That is, its optional and not mandated on all arrays for performance reasons.

    There are things that I am not sure of what they mean like Design by Contract (? is it not a design issue than a language issue?), strong typedefs, dynamic closures and currifying.

    Finally, nothing prevails till eternity. But D won't throw C++, for sure..

  9. #9
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    18

    Re: D

    Still, it looks like D is a better C/C++ (I am excluding C#, Java, etc.). What if D got into the gaming industry? Isn't it a worthy competitor to C++ in that regard? Also a good choice regarding system programming? From what I see it looks like D spans the whole area from low to high, more than C++ it seems. It also looks like migration from C/C++ to D would be no problem for all those guru programmers out there. I bet even beginning programmers would have an easier time learning D than C++.

    I'm just so interested in it, heh heh All the evolutions and such of languages...
    I've been looking at this D for a while now, and the more I read about it the more I like it. In my learning and practice code I've even been using D instead of C++ and it just feels right and it's almost the same anyway.

    One little thing I like is the dynamic character array and the absence of #including 'string' or any "string" type
    Emotion is thus peace is not.

  10. #10
    Join Date
    Feb 2005
    Location
    "The Capital"
    Posts
    5,306

    Re: D

    Quote Originally Posted by Bijo
    One little thing I like is the dynamic character array and the absence of #including 'string' or any "string" type
    Sorry, not worth the migration. C99 has support for VLAs not just char arrays and C++ has vector/string/array (boost::array actually). You need to find more serious reasons to the migration.

    Btw, you could learn any language that you want but if you are not targetting the same as for professional work - you are asking for an extra byte of effort competing there.

  11. #11
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    18

    Re: D

    Agh, that little piece of text you took out....


    From what I've read there are already people busy using D. There's even a game being written using D as the base language and seems like a very good project.

    Way I see it everything evolves. Even a standard mainstream low-level systems and high-level programming language like C++ could be made better, and D is where it's at. It'll just take some time before it becomes popular and better supported.
    Just imagine D and a good scripting language: would make good stuff for games.

    I hear compile times are a lot faster than C++ too. Well, I could list more reasons but if you go through the D newsgroup (http://www.digitalmars.com/NewsGroup.html) I'm sure you'll find enough info.


    Cheers
    Emotion is thus peace is not.

  12. #12
    Join Date
    Feb 2005
    Location
    Normandy in France
    Posts
    4,590

    Re: D

    Language comparisons with feature comparison tables are utterly stupid, especially when they ignore the standard library and focus on the core language.

    With these comparisons, python would be a very poor language, while Perl would be rich... Even for all the things where they perform identically!

    Moreover, it's very biaised.
    The choice of features is arbitrary.
    It's easy to claim that language X is better than language Y by listing in the table only features that X has and that Y doesn't have, and ignoring features that both have, or features that Y has but not X.

    Moreover, it's easy to list many minor or useless features which adds a lot of "features that X have but not Y", but which are irrevelant.

    Language comparisons are usually not clever, but language comparisons through table of features are the most utterly stupid comparison possible.

    A good language don't need a big core. It doesn't even need a big standard library. It needs to be able to do many things, in a convenient way. Either through core features, or through portable open source libraries, or through the capacity of directly interacting with the system API.
    "inherit to be reused by code that uses the base class, not to reuse base class code", Sutter and Alexandrescu, C++ Coding Standards.
    Club of lovers of the C++ typecasts cute syntax: Only recorded member.

    Out of memory happens! Handle it properly!
    Say no to g_new()!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured