Slashdot Mirror


The D Programming Language, Version 1.0

penguinblotter writes in a journal article: "Soon, Walter Bright is scheduled to release version 1.0 of the D Programming Language. D is a systems programming language. Its focus is on combining the power and high performance of C and C++ with the programmer productivity of modern languages like Ruby and Python. Special attention is given to the needs of quality assurance, documentation, management, portability and reliability. D has appeared on Slashdot a few times before, and Walter has continued to add more and more features. Most Slashdot community comments in these articles have been offered on feature X or spec Y without reading through the extensive D newsgroup archives. It has been here over the past seven years where extremely gifted and experienced programmers hashed out discussions and arrived at excellent implementations of all the ideas discussed." Read on for the rest of penguinblotter's writeup.
For those with a C/C++ background, D offers:
  • native code speed
  • extremely fast compilation times
  • garbage collection (although you can manage your own memory if you want)
  • OOP - by reference only, easy initialization, always virtual
  • cleaner template metaprogramming syntax, more powerful templates, as well
  • built-in dynamic and associative arrays, array slicing
  • versioning (no preprocessor madness)
  • link-compatibility with C
  • nested functions
  • class delegates / function pointers
  • module system
For those with a C#/Java background (a shorter list, but one with big wins):
  • similar syntax
  • No virtual machine or interpreter
  • built-in unit testing and design-by-contract
These two comparison sheets can go into more depth on how D stacks up against other languages.

From D's creator:
For me, it's hard to pinpoint any particular feature or two. It's the combination of features that makes the cake, not the sugar, flour or baking powder. So,
  1. My programs come together faster and have fewer bugs.
  2. Once written, the programs are easier to modify.
  3. I can do (1) and (2) without giving up performance.
Get your compilers and start hacking D!
  • DMD (Digital Mars reference compiler, Windows & Linux, x86)
  • GDC (GCC front-end)

14 of 570 comments (clear)

  1. This won't work... by PurifyYourMind · · Score: 5, Funny

    ...it's just another version race. D may have won for now, but someone out there is already working on the E programming language. ;-)

    1. Re:This won't work... by 0racle · · Score: 3, Funny

      Now, after F do we get G or 10?

      --
      "I use a Mac because I'm just better than you are."
    2. Re:This won't work... by sacrilicious · · Score: 4, Funny
      So - that only leaves you the letters H, I, N, O, P (sic!), U, V, W, Y and Z

      I hope someone creates an "O" language. That way, interface bindings for it could be called "O-interfaces", or "O-faces" for short. So when you create a nifty library for the language, publishing it could be known as "showing the world your O-face".

      --
      - First they ignore you, then they laugh at you, then ???, then profit.
  2. It looks like a step down by Anonymous Coward · · Score: 4, Funny

    After working so hard to get from C to C++, I don't see why I would settle for D. My next programming language is going to be B- or better.

    1. Re:It looks like a step down by 4D6963 · · Score: 2, Funny

      After working so hard to get from C to C++, I don't see why I would settle for D

      I'd gladly have my girlfriend to go from C to D, but I admit there's nothing I would love more than DD.

      Edit : yeah I know, quit telling me that I must be a liar, I don't have a girlfriend, WHO CARES?!?
      Edit #2 : What? You can't edit your comments on Slashdot? So how am I doing that, jerk?

      --
      You just got troll'd!
  3. Re:Another 'Toy' Programming Language by nacturation · · Score: 4, Funny

    I'll stick to languages that have at least a professional following, in use by real software engineers (that is, engineers who can legally call themselves engineers), not the run of the mill code monkeys. I'm dying to know... do you mean Fortran or Lisp?
    --
    Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
  4. Re:Weird writeup: by Anonymous Coward · · Score: 1, Funny

    the core language apparently is so weak that these can't be put into libraries...

    LMAO! And, as expected, we see your true colors. C++ FANBOY OFFENDED. FILM AT 11:00!

  5. Is anyone ... by compandsci · · Score: 2, Funny

    ... actually going to use this? I think I'll wait for D++

  6. IDE D's Language Features by trimbo · · Score: 2, Funny

    I just can't see why I'd want to switch to a language that has no IDE support and is evolutionary to C# or C++. I hardly have to look at documentation for APIs anymore because I can just use Visual Studio's autocompletion to figure things out.

  7. EVERY Language Sucks by JoeCommodore · · Score: 2, Funny

    I mean, like, I try to write this program, and like, the language does ONLY what I tell it to, not what I really want. That really sucks.

    Can't someone write up some stuff that understands proper english? Geez.

    --
    "Enjoy what you're doing! If it becomes drudgery, you're doing it wrong!" - Jim Butterfield
    1. Re:EVERY Language Sucks by istartedi · · Score: 2, Funny

      %ecc posting.english -o test
      warning 1: ``like" is superfluous teen speak, construct discarded.
      warning 1: ``and like" is superfluous teen speak, construct discarded.
      warning 3: ``english" assumed to be ``English".
      warning 3: ``Geez" undefined. Linking against null action function.
      % ./test
      The poster's meaning is that he tries to write a program.
      We have established that ``That" really sucks, and we are
      assuming that ``That" is the poster's act of writing a program.
      Can't someone write up some stuff that understands proper english (Y/N):
      --
      For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
  8. Re:Because the ones we have suck? by thephotoman · · Score: 4, Funny

    Wait...C++ without the bullshit? That takes away all of C++!

    --
    Haec merda tauri est. Ceterum censeo Carthaginem esse delendam.
  9. The H programming language by Joseph_Daniel_Zukige · · Score: 2, Funny

    would be popular in Japan, I'm sure.

    Especially among teenagers and otaku. (And geeks who think that otaku is equivalent to geek.)

  10. Re:GC, No Vm or performance hit by discord5 · · Score: 2, Funny
    This is traditionally followed by a wisecrack about how memory is cheap, followed by three enlightened posters pointing out the stupidity of that argument for multiple reasons. :-)

    Let me help you with this :

    Ha! Memory is cheap!
    So was your mother last night.

    Dad?

    Meh, karma to burn...