pjmlp at progtools.org
Sat Feb 11 00:58:03 PST 2012
Am 10.02.2012 20:02, schrieb Tim Krimm:
> We have C and C++
> How about D- and D?
> D- would be the have a similar use as today's C compilers.
> Why create this language?
> Well I would love to have a D compiler that supports microcontrollers.
> The ones that have say 32 K of RAM and 64K of FLASH.
> A language that is targeted for embedded and/or low resource environments.
> It would be nice to have a modern language for low resource environments.
> A potential way to implement this language is to use the DMD frontend,
> then flag the unsupported features of D,
> Next create a backend, like "C front" that outputs C code instead of
> What do I envision with D-,
> D-- or Dm or what ever you want to call it.
> This language would basically be D without the garbage collection.
> For example there would be structures but no classes.
> There would be regular arrays but no dynamic arrays.
> Code that is mostly equivalent to C, but you would still have structures
> with functions and overloading support,
> and other features like templates etc.
> I think you get the idea.
> What are your thoughts?
I don't see the point.
C++ was the last systems programming language without GC getting market
share. I seriously doubt any new systems programming language without GC
will ever suceed.
Specially since systems programming in MacOS X and Windows world is
slowly meaning the use of reference counting or GC in the vendor
supported systems programming languages. Objective-C in MacOS X supports
GC and Reference Counting (GC). C++ in Windows has the std::*ptr and
handles in C++/CX. Then there is also C# for systems programming, when
used in context of Microsoft Research projects like Singularity.
So sum this up. If you need a languague without GC, C and C++ are quite
good, have lots of tools and excellent compilers available.
Do you need a very simple C like language, but with GC and a few
improvements, Go might be an option.
Do you need a language with GC, that is C++ done right and quite capable
for systems programming, pick D.
There is no need to D-.
More information about the Digitalmars-d