What is the Philosophy of D?

Ola Fosheim Grøstad ola.fosheim.grostad+dlang at gmail.com
Wed Oct 25 18:12:23 UTC 2017


On Thursday, 19 October 2017 at 13:09:25 UTC, Dukc wrote:
> Perhaps. Well, contrasted to .Net and JVM standard libraries 
> then?

When it comes to imperative languages I certainly think the 
libraries/frameworks will discourage some programming styles.

Some parts of the D standard library also assume that you follow 
a particular style. Nothing wrong with it. It is different to 
reason about programs that combine many different styles.

In some ways that has been a problem in C++. Libraries being 
wildly different in style. Which they now try to correct by 
having central guidelines and narrow down the "idiomatic" styles 
in the new additions to the C++ standard library…

> In most regards they are very different, yes. But the 
> similarity is that like C++/D, Forth is designed with many 
> different programming styles in mind, instead of paving way 
> primarily for one certain way of working.

Hm, I don't see the connection. Forth was designed to run on an 
8-bit CPU, basically providing a simple memory-compact 
representation for controlling hardware. I think Forth encourages 
a rather peculiar way of programming, but maybe you are thinking 
about some modern dialect.

> Of course D is very close philosophically to C++, that's what 
> gave it the name in the first place! The main difference is 
> that there's no burden of backwards compatibilty with C/C++, 
> and as proven it's enough of difference for many.

Actually, I think D has put way too much emphasis on C 
compatibility. That's an area where Rust got something right by 
not trying to be a C superset a priori.





More information about the Digitalmars-d mailing list