What is the Philosophy of D?
codephantom
me at noyb.com
Wed Oct 18 00:05:06 UTC 2017
On Tuesday, 17 October 2017 at 09:24:39 UTC, Dukc wrote:
> On Monday, 16 October 2017 at 00:25:32 UTC, codephantom wrote:
>> Is philosophy not important?
>
> I think that if somebody wants to nail down a philosophy for D,
> the main page puts it well: "The best paradigm is to not impose
> something at the expense of others". I also heard that long ago
> there was a phrase "D is not a religion". I wasn't myself here
> then but it still describes D alot.
>
> Well, I quess other phrases could also be included it, like
> "ultimate performance must be attainable, but if the way for it
> is otherwise undesirable it should be explicit" but the point
> is that D tries to let you to program in any style it
> technically can. With that "technically can" I mean that it
> does not support logic programming for example because it would
> require too great a rework on implementation and language spec.
>
> This is in contrast to Java and C# which almost force you to
> use object-oriented styles, and Python whose philosophy is
> "there should be one, and preferably only one clear way to do a
> thing". C++ and Forth are examples of languages which share
> that philosophy of D.
Again, philosophy != religion. Why do these terms get confused so
much?
One tries to make sense of things using 'reason', the other does
not (i.e religion is based on faith - which you can't reason
about).
Religion can be imposed, philosophy cannot be imposed - because
one is always free to reason about it.
The philosophy of unix is to have a minimalist, modular approach
to software development (even if that's not always the case -
because it can't be imposed).
The philosophy of C is that the programmer knows best (even if
that's not always the case - because it can't be imposed).
GPL is more a religion that a philosophy - because it seeks to
always impose (oops....should I have said that...)
The D language certainly does *not* have a religion, but it does
have a philosophy....whether it knows it or not...
In my efforts trying to 'make sense' of the D language, I can't
help but think that its philosophy almost certainly incorporates
the concept of:
"freedom ~ for programmers".
Hey...perhaps that's it!
(even if that's not always the case - because it can't be
imposed).
More information about the Digitalmars-d
mailing list