D future ...

ryan via Digitalmars-d digitalmars-d at puremagic.com
Tue Dec 20 07:01:37 PST 2016


On Monday, 19 December 2016 at 23:02:59 UTC, Benjiro wrote:
> I split this from the "Re: A betterC modular standard library?" 
> topic because my response is will be too much off-topic but the 
> whole thread is irking me the wrong way. I see some of the same 
> argument coming up all the time, with a level of frequency.
>
> D has not market:
> -----------------
>
> A lot of times people complain that D has no real audience / 
> market. Is D the perfect system. No... But lets compare to 
> those other languages shall we? Now this is my opinion, so take 
> it with a bit of salt.
>
> Go: Its is a "simple" language. But its forced restrictions at 
> times are so annoying its saps all the fun out of the coding. 
> Its not really C. Its more Basic on steroids. Unfortunately 
> while Go has huge amount of traction and packages ( 70k from my 
> count ), the quality is also... It has a few real gems those 
> gems are a result of the mass amount of packages. It has its 
> own market. A scripting replacement market mostly.
>
> Crystal: Is pure Ruby focused. Again, it draws in a lot of 
> people with a Ruby background. Interesting language that is 
> already splitting away from Ruby comparability.
>
> Nim/Julia/Numpy/Numba: Are very Python like focused. Nim will 
> disagree but its very clear. Again, the focus seems to draw in 
> more scripting language orientated people, mostly from the 
> Python area.
>
> Rust: Promotes itself to be better C but its simply a more 
> complex language design. A over active amount of fans, that do 
> not understand its complex. Less fun to get into. Reminds me 
> too much of Perl.
>
> D is C++ but improved/simplified. Its not to hard to get into, 
> its more easy for anybody from a C background.
>
> Take it from a guy that spend a large part of his life in PHP. 
> I feel more at home with D, then with all the other languages. 
> The moment you get over a few hurdles, it becomes a very easy 
> language. My point is that D does fit in a specific market. It 
> fits in between C++ and scripting languages like PHP ( that has 
> a more C background ).
>
> Its not going to convert a lot of C++ people. Sorry but its 
> true. C++ has been evolving, the people who invested into C++ 
> have very little advantage of going to D. The whole focus on 
> C++ people marketing is simply wrong! Every time this gets 
> mentioned in external forums, the language gets a pounding by 
> people with the same argumentation. Why go for D when C++ 20xx 
> version does it also.
>
> Trusting a person with C like scripting language ( like 
> PHP/Java ) background into C++, well that is fun <sarcasm>. 
> People always seem to say that D has no real advantage but it 
> has. Its easier C++ for people who do not come from C/C++. 
> Maybe i am downplaying this but for love of the gods, the focus 
> is wrong. I am the same guy that complained a while ago about 
> the website its examples being too "advanced" and it scares a 
> big potential group of people away.
>
> Community:
> ----------
>
> But community wise there is a real issue. People are friendly 
> and help out. But it feels like everybody is doing there own 
> thing.
>
> I see a lot of people arguing a lot about D and sorry to say 
> but at times it sounds like a kindergarten. Walter/Andrei are 
> right that updates and changes need to be focused on the 
> standard library. Maybe its because people who use D are more 
> into proprietary software, that there is less community 
> response with work going into the library. But ... see below in 
> Walter / Andrei section.
>
> Library ( and runtime bloat ):
> ------------------------------
>
> But it also does not diminish some of the requests. When i 
> write a simple program that uses the socket, standard, string 
> and conv library. All it does is open a TCP socket and send a 
> response back. This is not supposed to take 2.4MB in memory, 
> with a 1.2MB compiled executable ( 450kb o file ). Full blown 
> Nginx uses only one MB more for its core in memory. For 
> something so simple, its a little bit crazy.
>
> When i make a plugin in Go 1.8, it uses 10KB. A plugin ( shared 
> C library ) in D uses almost 200KB. Using C++ it results into 
> another 10KB file. Maybe i am a total noob but some things make 
> no sense. It gives me the impression that some massive run 
> times are getting added or there is some major library bloat.
>
> Library Standardization:
> ------------------------
>
> Some of the proposals sounds very correct. The library needs to 
> be split. Every module needs its own GIT. People need to be 
> able to add standard modules ( after approval ).
>
> No offense but where is the standard database library for D? 
> There is none. That is just a load of bull. Anybody who wants 
> to program in any language expect the language to have a 
> standard database library! Not that you need to search the 
> packages for a standard library. I have seen one man projects 
> that have more standard library support then D.
>
> Its one of the most basic packages. How about a simple web 
> server? A lot of languages offer this by default. It gets 
> people going. vibe.d is not a simple web server. It's not a 
> standard package.
>
> If you are a low level programmer, sure, you can write you way 
> around it. Despite my PHP handicap i am writing a Sqlite 
> wrapper for my work. I do not use 3th party packages because a) 
> i do not know the code b) the fear that the work will be 
> abandoned. I can excuse (a), when i know its the standard 
> library because there will always be people willing to work on  
> the standard library.
>
> Documentation:
> --------------
>
> I do not use it. Its such a mess to read with long paragraphs 
> and a LOT of stuff not even documented. Like the whole C 
> wrappers etc. My personal bible is simple: Google search for 
> examples and Ali's book for some rare cases.
>
> When i compare this to my PHP background. Hmmmm, what does x 
> function do again. Google function. Webpage with X function. 
> Links to related function. Examples. Clear simple answers.
>
> This automated documentation generation is the same **** i see 
> in other "new" languages. Impersonal is the word to describe 
> it. Sure there is some tutorial in the documentation that way 
> too long ( never hear of chapters? ) but a lot of that 
> information needs to be with the functions.
>
> Maybe other developers can make more heads or tails out of the 
> API documentation but like i said, i do not use it. Every time 
> i need a advanced feature its hardly documented. With 
> references and text buildups that is just annoying.
>
> Editor support:
> ---------------
>
> What a struggle. Visual Studio C is probably the editor with 
> the best 3th party support.
>
> IntelliJ: Hardly any plugins. Limited to IntelliJ platform and 
> not the rest.
> Atom: Same issue, hardly any advanced D support.
> Vim: Lets not go there.
> 3Th party D IDE's: A lot simply are designed for local working, 
> white background ( uch ), etc...
>
> I can go on. For me it has been a struggle to find the perfect 
> editor. Extended IDE's like IntelliJ have hardly support. There 
> are a lot of plugins to add D to editors but most are long time 
> dead or incomplete.
>
> Try remote editing D and see how much fun it is. Most Editors 
> or IDE with proper remote edit ability, have lacking D 
> supported plugins.
>
> Too many need 3th party to do something that D needs to support 
> from itself:
>
> dcd - Used for auto completion
> dfmt - Used for code formatting
> dscanner - Used for static code linting
> ...
>
> This needs to be in the default installation of dmd! It makes 
> no sense that these are not included.
>
>
> Future:
> --------
>
> You want D to have traction. Marketing, more library support, 
> less focus on adding even more advanced features, fixing issues 
> ( like better GC ), CTFE ( Stefan is dealing with that ), 
> Documentation, better Editor support...
>
> Walter / Andrei:
> ----------------
>
> No offense guys, just something that i see in a lot of posts. 
> The hinting at people to add more to the standard libraries. 
> That little push. But frankly, its annoying when nothing gets 
> done.
>
> People complain about x feature. You tell people to add to the 
> standard library or bring the project in. But anybody who has 
> ever read this forum sees how adding things to the language is 
> LONG process and a lot of times idea's get shot down very fast.
>
> For the standard library there is no process as far as i can 
> tell. Experimental at best, where code seems to have a nice 
> long death.
>
> Just needed to get this off my chest. The problems with D are 
> LONG TIME known. Anybody who spends some time reading the 
> forums sees the exact same things.
>
> My advice Walter / Andrei: Stop trying to add new things to the 
> code. It works. Its not going anywhere. There are no features 
> that you can add, that people can not already do. Maybe it 
> takes a few longer lines but those are not the issues.
>
> Focus on improving the other issues like stated above. Maybe 
> also deal with some of the speed  bloat issues. If you ask 
> people to help, give them the motivation to do so.
>
> Bring more projects into D. When you have people like Webfreak 
> making workspace-d, to simply the installation of those almost 
> required editor extensions, it tells you that D has a issue.
>
>
> Ilya's proposals are too extreme and need a middle ground. But 
> he is not wrong.
>
> Seb posted a massive list of modules that can be standard 
> candidates. And the response is more or less ignore it. People 
> who work on Standard libraries are more motivated. Bring  them 
> into the fold. But it seems that they simple get ignored.
>
> Like i said, please work on standard libraries is not the 
> answer. It does not motivate people ( especially when in the 
> same text you end up breaking down people there proposals ). 
> Maybe its not the intention but it comes over like this.
>
> Why is there no forum part for proposals about libraries that 
> get added to Phobos ( why is it even still called that. Call it 
> standard library and be done with it. It only confuses new 
> people ). The current forum is a pure spam forum.
>
> You need a Standard forum. With subbranches for std.xxx, 
> std.xxx, std... Let people talk about improvements there. If 
> people want to add a new branch, let them put up a proposal and 
> do NOT mothball it for months in discussions.
>
> Hell, the whole "D Programming Language - Development" forum is 
> so much spam, it becomes almost useless. Its a distraction to 
> post each issue there with 0 responses on 95%.
>
> End Rant:
> ---------
>
> Sorry for the long text but as somebody who has been reading 
> the forums for a while now, its just annoying to see some of 
> the bickering.
>
> But i simply get frustrated seeing the direction where relative 
> simple things get overlooked for more complex features! D 
> already is a great language but it REALLY has issue on several 
> departments. It does not need more boilerplate / expansion, it 
> needs focus! Most of the points that i bring up are not that 
> complex. But it takes a community manager / moderator to keep 
> topics a bit more focused. Not somebody who will go into 
> endless discussions with people ( not naming names ... Andrei 
> ;) ). Sorry guys but it feels like you are too technical 
> focused and not thinking about the bigger picture. Suggesting 
> things does not work when nobody gives people the chance to 
> prove themselves.
>
> Give people the ability to add more to std.experimental. Give 
> it its own forum part. Give people actual hope that there work 
> can be added. I have seen several ex-D programmers, who 
> complained about D regarding issues like this. If D wants to be 
> a community project, then act like a community project. Because 
> now, its just a contribution project where some people have 
> easier access to add stuff and other walk against a brick wall 
> of months ( and give up ).
>
> Its late... already spend almost two hours writing this, that i 
> was able to spend on writing actual code. And i am going to 
> take a break from reading this forum, it sucks the life out of 
> people and they spending all the time on bickering over details 
> and eventually not getting a darn thing done. Already 
> overworked at work + my own D project.

Rust doesn't promote itself as a better C. It promotes itself as 
a replacement for C/C++ which is not the same thing.


More information about the Digitalmars-d mailing list