What are the worst parts of D?

Dicebot via Digitalmars-d digitalmars-d at puremagic.com
Mon Oct 6 11:13:41 PDT 2014


On Monday, 6 October 2014 at 16:06:04 UTC, Andrei Alexandrescu 
wrote:
> I'm confused. Why would anyone who just comes to dlang.org see 
> unformed ideas and incomplete designs? Wouldn't newcomers be 
> more attracted by e.g. stuff coming in the next release?

Because he is interested in language development direction but 
does not want to actively participate? It can be someone with bad 
early D experience wondering if anything has changed in last 
year. Or it can be developer from some company using D wanting to 
get quick overview what to expect from the language for the next 
year or so.

For example I don't have time to follow Rust mail lists or GitHub 
commits but I do read blog posts of its developers regularly 
(including speculative ones) to see where it is heading. It is 
both interesting and educating and helps to spread the image 
among wider audience as well.

>> The fact that you don't seem to have a consensus with Walter 
>> on some
>> topic (auto-decoding, yeah) doesn't help either. Language 
>> marketing is
>> not about posting links on reddit, it is a very hard work of
>> communicating your vision so that it is clear even to random 
>> by-passer.
>
> I think one good thing we can do is approach things in private 
> before discussing them publicly.

Agreed. I don't propose to stop paying attention to forums or 
drop all discussions but to put a bit more efforts into 
popularizing resulting decisions and plans. So that someone can 
safely ignore some of discussions without fearing that it will 
surprisingly appear in next release catching one off guard.

>>> We now have Martin Nowak as the point of contact.
>>
>> And what if he gets busy too? :)
>
> Maybe you'll volunteer.

I have already considered that and can be pretty sure this won't 
ever happen (at least not while this implies paying to Apple a 
single cent)

Let's get it straight - I don't care much about D success in 
general. It is a nice language to use here and there, I got an 
awesome job because of it but this is pretty much all the scope. 
There is no way I will ever work on something that is not needed 
to me only because it is important for language success in 
general.

This is pretty much the difference between language author / core 
developer and random contributor and why handling releases is 
safer in the hands of former.

> No doubt its design could be done better. But inout was not 
> motivated theoretically. It came from the practical need of not 
> duplicating code over qualifiers.

I don't mean feature itself was "theoretical". I mean that it was 
implemented and released before it got at least some practical 
usage in live projects with relevant feedback and thus have 
missed some corner cases.

> Sean proposed that. In fact that's a very good success story of 
> sharing stuff for discussion sooner rather than later: he 
> answered a Request For Comments with a great comment.

Well when I have initially asked the same question (why not 
user-controllable policies?) you straight out rejected it. I must 
be very bad at wording questions :(

> Again: I don't have a complete design, that's why I'm asking 
> for comments in the Request For Comments threads. Would you 
> rather have me come up alone with a complete design and then 
> show it to the community as a fait accompli? What part of 
> "let's do this together" I need to clarify?

"let's do this together" implies agreeing on some base to further 
work on. When I come and see that proposed solution does not 
address a problem I have at all I can't do anything but ask "how 
is this supposed to address my problem?" because that is _your_ 
proposal and I am not gifted with telepathy. Especially because 
you have stated that previous proposal (range-fication) which did 
fix the issue _for me_ is not on the table anymore.

>> You risk balkanization by keeping the things as they are. We 
>> do have
>> talks at work sometimes that simply forking the language may 
>> be a more
>> practical approach than pushing necessary breaking changes 
>> upstream by
>> the time D2 port is complete. Those are just talks of course 
>> and until
>> porting is done it is all just speculations but it does 
>> indicate certain
>> level of unhappinness.
>
> It would be terrific if Sociomantic would improve its 
> communication with the community about their experience with D 
> and their needs going forward.

How about someone starts paying attention to what Don posts? That 
could be an incredible start. I spend great deal of time both 
reading this NG (to be aware of what comes next) and writing (to 
express both personal and Sociomantic concerns) and have 
literally no idea what can be done to make communication more 
clear.

>> Have you ever considered starting a blog about your vision of D
>> development to communicate it better to wider audience? :)
>
> Yah, apparently there's no shortage of ideas of things I should 
> work on. Perhaps I should do the same. Dicebot, I think you 
> should work on making exceptions refcounted :o).

As soon as it becomes a priority issue for me or Sociomantic 
(likely latter as I don't do much private D stuff anymore).

However your attempt to be sarcastic here does indicate that you 
have totally missed the point I was stressing in original 
comment. Writing a blog post once in a few months is hardly an 
effort comparable to reimplementing exceptions management but is 
much more important long term because no one but you can do it.

In this sense, yes, it is much more pragmatical to wait for 
someone like me to work on reference counted exceptions and for 
you to focus on communication instead. Worst thing that can 
happen is that nothing gets done which is still better than 
something unexpected and disruptive getting done.


More information about the Digitalmars-d mailing list