Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror

Comment Here's a game (Score 2, Insightful) 526

On the D website, there is an overview of the D programming language which includes a list of C/C++ features that have been deliberately dropped. My game comprises thinking of your own favourite programming language - be it Perl, Java, Eiffel or Visual Basic - and seeing how many of these features have been 'dropped' from it. My favourite language is the Object Pascal in Delphi. 'Yes' means 'Yes Pascal doesn't have this feature'.
  • C source code compatibility - Yes. Wow, gosh.
  • Link compatibility with C++ - No, can be linked to C++ Builder modules
  • The C preprocessor - Yes
  • Multiple inheritance (ie Full not Java-style) - Yes
  • Namespaces (use modules instead) - Yup
  • Tag name space - Yup
  • Forward declarations (compiler searches whole module for name definition) - Nope
  • Include files - Mostly 'Yes' but a little bit 'No'. Delphi does allow includes, but it doesn't use them in the C/C++ sense; it imports binary symbol tables like D. Score 1/2.
  • Creating object instances on the stack as opposed to the heap - Yes, dropped when Turbo Pascal became Delphi
  • Trigraphs and digraphs - Yes
  • Preprocessor - Yes
  • Non-virtual member functions - No, but the Delphi syntax copes better than C++ with the cited problem (no error messages when you fail to supply a virtual base class) by using an extra keyword - override - to signal programmer intent. Score 1/2.
  • Bit fields of arbitrary size - Yes
  • Support for 16 bit computers - I suppose 'No' since Delphi 1 was 16-bit.
  • Mutual dependence of compiler passes - I think 'Yes', but I am out of my depth
  • Compiler complexity - Probably Yes - deduced from Object Pascal's fast compilation. Besides everything is less complex than C++.
  • Distinction between . and ->. Yes - uses only '.' operator.
So 13/17. Better offers?

Slashdot Top Deals

All your files have been destroyed (sorry). Paul.

Working...