| |
| Posted by H. S. Teoh in reply to arco | PermalinkReply |
|
H. S. Teoh
| On Mon, Nov 08, 2021 at 01:36:59AM +0000, arco via Digitalmars-d wrote: [...]
> The other problem is that D seems deeply allergic to making hard decisions. From reading this forum it seems to me that the overall attitude within D is that it should offer choices, not enforce decisions. But in the real world, that's often a bad thing. Another language with the same mantra was Perl. Look at what happened to Perl the moment we got Python, Ruby etc. Enforcing decisions is a Good Thing: it ensures that people understand each other's code, that analysis tools can do a much better job, that people won't roll out their own error management that doesn't work together with someone else's, that there will be consistency in memory management, etc etc etc. Once again, the two languages somewhat comparable to D that "made it", Go and Rust, are all about enforcing what they deemed to be their way to do things. That doesn't mean it's the only legitimate way, but it means that if you want to do X, this is how you do it in Go (not that there isn't a one true way, but you are free to try to devise 15 different ways). And if the Go way doesn't work for you, that's perfectly fine, there are other languages that would be a better fit for your problem. Same for Rust.
[...]
Interesting, one of the reasons I *like* D is because it lets me do the deciding, instead of dictating how I should do things. IMO it's what makes it adaptable to all kinds of different tasks. For one task I might need heavy use of the OO paradigm, for another task I might need a more functional approach, for yet another task, I might need to go low-level C-like approach with manual loop unrolling and hand-tweaking generated code. D lets me do all of that without any encumbrance (I don't have to e.g. do lip-service to OO just to get the thing to compile, like I have to in say Java), and best of all, lets me do all of that *in the same program* because it's all D.
I'm honestly surprised anyone would want it any other way! :-D (Being forced to do things one particular way is what drove me *away* from languages like Java.)
T
--
Кто везде - тот нигде.
|