What can you "new"

Georg Wrede georg.wrede at iki.fi
Thu Mar 26 06:43:04 PDT 2009


Cristian Vlasceanu wrote:
> Hm... how should I put it nicely... wait, I guess I can't: if you guys think 
> D is a systems language, you are smelling your own farts!

However much I'd like to disagree, I can't.

> Because 1) GC magic and deterministic system level behavior are not exactly 
> good friends, and  2) YOU DO NOT HAVE A SYSTEMS PROBLEM TO SOLVE. C was
> invented to write an OS in a portable fashion. Now that's a systems 
> language. Unless you are designing the next uber OS, D is a solution in 
> search of a problem, ergo not a systems language (sorry Walter). It is a 
> great application language though, and if people really need custom 
> allocation schemes, then they can write that part in C/C++ or even assembler 
> (and I guess you can provide a custom run-time too, if you really DO HAVE a 
> systems problem to address -- like developing for an embedded platform).

On larger systems (PC size and up), the window for a new operating 
system has closed. Windows has a majority of the market (and to top it 
all, System-7 is the first decent version in years!), and Linux/Unix 
take care of the rest. One would have to invent a truly compelling story 
to justify even thinking of creating a new system.

I can't imagine developing for an embedded platform in D. First, D 
doesn't work in 16 bit systems. (Yes, it can be said that in time all 
systems will be 32 bit, but that will take years. New 16 bit processors 
are developed as we speak, and, many embedded systems simply don't need 
32 bits.)

Even on a 32 bit system, one would like to have complete control, and 
that does mean programming without GC.

To do Systems Work on an embedded system, I'd like to see a D subset, 
without GC, and which would essentially be like C with classes. I've 
even toyed with the idea of having a D1toC translator for the job.

But, I agree, D makes an excellent Application language. Imagine 
OpenOffice was written in D!!! I'd say those guys would already be a lot 
further had they ported it to D a few years ago. (Of course, only now D1 
is stable enough to even consider it, but you know what I mean.)

D does combine the upsides of several other languages, and makes it 
truly a joy to use. (As far as the language itself is concerned, 
ignoring other things here, like libraries, and such, of course.) 
Programming in a language that lets you focus on the task instead of the 
language, simply makes the applications less buggy, and of higher 
quality. This is almost too obvious to say. And you have more time for 
features, too.

If we'd collectively recognize that D is an App language, then maybe 
this would sharpen our understanding of what we need to do.




More information about the Digitalmars-d mailing list