On 02/11/2012 12:58 AM, Paulo Pinto wrote:
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
assembler.


===========================
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

Systems programming in the MacOS X and Windows world isn't real systems programming. The closest you get is kernel and driver work but even there you have most of an OS to work with. I think the kind of systems programming being considered is embedded work and/or things like BIOS work.

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-.

--
Paulo

Reply via email to