www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Has D failed? ( unpopular opinion but I think yes )

reply Tofu Kaitlyn <katemmons0 gmail.com> writes:
Sorry for that title, but this is something I have been thinking 
about for a while...

I honestly feel like D is a failure. I kinda just wanted to vent 
about it and see what other people think.

I have been using D since around 2012 or 2013, instantly fell in 
love, use to post on the forms a lot under the name Tofu Ninja. I 
was convinced D was the future but since then I have become 
disheartened. The biggest thing that makes me feel like this is 
that in the 7 years I have been using D I literally have never 
met another programmer IRL who has even heard of it. I put on my 
resume that I like D and every interview I get asked about it, 
having to explain what D even is because they have never heard of 
it. I have never seen a job posting listing D. Never see any 
projects pop up on /r/programming using D. It feels like to the 
rest of the programming universe, D doesn't even exist. Sometimes 
I see threads on reddit like "what's your favorite programming 
language" and I always look for D but never find it.

And honestly I don't think that is going to change. I feel like D 
has failed.

I duno... what do yall think? Is D going to somehow explode in 
popularity in 5-10 years? Am I missing some part of the picture? 
Or am I right and if so what can be done about it?
Apr 12 2019
next sibling parent reply JN <666total wp.pl> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 Sorry for that title, but this is something I have been 
 thinking about for a while...
No. It hasn't failed. However that's true, it doesn't have the wide recognition that say Go or Rust get at the moment. It's more behind the scenes, around the same level of popularity as Nim, Crystal. Also, D community doesn't frequent places like Reddit often, most of the activity is done here in forum or through Github issues for relevant projects. Still, when a project related to D shows up on /r/programming it often brings a lot of curiosity or people saying that they use D, it's just they don't have anything to show for it yet. But even these languages are not as popular as one would think. I work as a programmer, I often talk to my coworkers and they look at me funny when I mention languages like D, Dart, TypeScript, Go languages don't exist to them. I don't think D will explode in popularity in the future. D isn't a very opinionated language. It's working through evolution rather than revolution. It's based around stable growth rather than flashy features. It could be argued though, that some of the design decisions are slowing the growth of the language. For example the whole GC/runtime thing makes it hard to deploy to web/webassembly, an area that Rust is actively conquering right now. Sure, we have betterC, but it's not really helpful in this case.
Apr 12 2019
parent reply SrMordred <patric.dexheimer gmail.com> writes:
On Friday, 12 April 2019 at 08:02:30 UTC, JN wrote:
 more behind the scenes, around the same level of popularity as 
 Nim, Crystal.
Since i think this is a talk about popularity... I feel that Nim and Crystal have WAY more adoption/popularity than D, but im not sure if both are backed by any great group (like Rust). So I think a good point to focus this discussion is, why Nim and Crystal got the lead in popularity but not D?
Apr 12 2019
next sibling parent reply Chris <wendlec tcd.ie> writes:
On Friday, 12 April 2019 at 13:50:42 UTC, SrMordred wrote:
 On Friday, 12 April 2019 at 08:02:30 UTC, JN wrote:
 more behind the scenes, around the same level of popularity as 
 Nim, Crystal.
Since i think this is a talk about popularity... I feel that Nim and Crystal have WAY more adoption/popularity than D, but im not sure if both are backed by any great group (like Rust). So I think a good point to focus this discussion is, why Nim and Crystal got the lead in popularity but not D?
Crystal and Nim also have C interop and afaik support Android and iOS (correct me if I'm wrong) and JS. C interop was one of the features that turned me onto D. https://crystal-lang.org/reference/overview/ https://nim-lang.org/docs/backends.html Mind you, the first thing a lot of people ask is "Can I use it on mobile and is it painless to do so?". This is the reality of things. Kotlin devs realized that. Language adoption is not _only_ about language features, it's about usefulness too. This is why they simplified Scala. I don't know about Crystal and Nim (they're still very young), but Kotlin, for example, ships with certain guarantees that give you security. Updates usually bring new and useful features that are not random and don't break existing code. I know, some people may be tempted to say "Ah, that's a language for mediocre coders, real wizards use D, those who read their books in binary format!" But what good is a language you cannot really use as a "general purpose" language, and general purpose includes multiple platforms.
Apr 12 2019
next sibling parent Dukc <ajieskola gmail.com> writes:
On Friday, 12 April 2019 at 14:24:05 UTC, Chris wrote:
 Mind you, the first thing a lot of people ask is "Can I use it 
 on mobile and is it painless to do so?". This is the reality of 
 things. Kotlin devs realized that. Language adoption is not 
 _only_ about language features, it's about usefulness too. This 
 is why they simplified Scala.
I don't think the language features that have been worked on lately are because mobile/JS/ect would be considered less important. Quite the contrary for many of them, I give you examples: -The idea behind -dip1008 is to eliminate reliance of the garbage collector when doing exception handling. If it, or something similar, will be succesful, that means you can use exceptions on precise real-time enviroments, that can't afford the GC. And you can do that without doing any special memory handling. For me, that's exactly what counts towards portability and usefulness on different platforms. -Sebastiaan Koppe's excellent spasm library, that allows D code on browsers, uses stdx.allocator (essentially the same as std.experimental.allocator of Phobos, I'm not sure if they have ANY difference). Currently stdx.allocator won't "just work" in no-runtime enviroment, you need to do some hacks. But the point is, that work done on Phobos allocator module, that hasn't been around for long, is exactly what makes it easier to port D outside desktop enviroments. -BetterC. I don't think I need to explain this one. -Interfacing to C++ and Objective C. No need to maintain a separate C interface that always breaks when porting.
Apr 12 2019
prev sibling next sibling parent reply JN <666total wp.pl> writes:
On Friday, 12 April 2019 at 14:24:05 UTC, Chris wrote:
 Mind you, the first thing a lot of people ask is "Can I use it 
 on mobile and is it painless to do so?". This is the reality of 
 things. Kotlin devs realized that. Language adoption is not 
 _only_ about language features, it's about usefulness too. This 
 is why they simplified Scala.
This is an unfair comparison. Kotlin is piggybacking on JVM and Java. First few versions of Kotlin were basically Java with Project Lombok annotations added as language features rather than awkward compilation stage hack. Only later did it start to emerge as a new language with its own paradigms.
Apr 12 2019
parent Russel Winder <russel winder.org.uk> writes:
On Fri, 2019-04-12 at 18:05 +0000, JN via Digitalmars-d wrote:
 [=E2=80=A6]
 This is an unfair comparison. Kotlin is piggybacking on JVM and=20
 Java. First few versions of Kotlin were basically Java with=20
 Project Lombok annotations added as language features rather than=20
 awkward compilation stage hack. Only later did it start to emerge=20
 as a new language with its own paradigms.
Please do not forget that a large number of features of Kotlin, even early versions, stem from things that were started in Groovy. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Dr Russel Winder t: +44 20 7585 2200 41 Buckmaster Road m: +44 7770 465 077 London SW11 1EN, UK w: www.russel.org.uk
Apr 12 2019
prev sibling parent Julian <julian.fondren gmail.com> writes:
On Friday, 12 April 2019 at 14:24:05 UTC, Chris wrote:
 Crystal and Nim also have C interop and afaik support Android
 and iOS (correct me if I'm wrong) and JS. C interop was one of
 the features that turned me onto D.
You're wrong. Android and iOS are both incredibly developer-hostile platforms. There's almost nothing that supports development on them, and a lot of what support exists is hackish and limited or massively inconvenient vs. what you get with official development tools. It's not a case of "bindings vs. *real* libraries". It's "go write your GUI with raw X11 networking instead of using any library -- and and BTW we're moving to Wayland and your X11 stuff will stop working one day for important security reasons." Some 'support' is even a lie. There's a StackOverflow answer that earnestly suggested Clojure for Android development--linking to a page that described Clojure apps as requiring several seconds just to launch on Android. Scala was also promoted for Android, and don't you mind that dalvik limitations and Scala class-spam mean that your app will one day abruptly no longer work for extremely hard to deal with reasons. I once built an Android app with some Mercury in it, compiling to Java. In the same way you can probably put Nim on Android by compiling to JS and using some JS tool chains. You can also write a Java launcher that manages UI, with other program logic via a shared library or with IPC to a packaged CLI executable that's running in the background. That gives you just about any language with an ARM toolchain or C transpiling. If you don't care about massive inconvenience vs. using the intended development kits. I've stopped caring about mobile, but in Termux on a Android tablet right here, I have ldc2 installed with apt, and can compile D code on the go. For a while you could even build .apks directly on a device, and install them locally, with http://www.spartacusrex.com/terminalide.htm That made for some quick turn-around and I enjoyed working with it while it lasted. It still wasn't as good as PalmOS development.
Apr 12 2019
prev sibling next sibling parent JN <666total wp.pl> writes:
On Friday, 12 April 2019 at 13:50:42 UTC, SrMordred wrote:
 On Friday, 12 April 2019 at 08:02:30 UTC, JN wrote:
 more behind the scenes, around the same level of popularity as 
 Nim, Crystal.
Since i think this is a talk about popularity... I feel that Nim and Crystal have WAY more adoption/popularity than D, but im not sure if both are backed by any great group (like Rust). So I think a good point to focus this discussion is, why Nim and Crystal got the lead in popularity but not D?
I disagree. Crystal doesn't even have Windows support. Nim is very obscure, it rarely pops up even on Reddit. It might seem like they have a lot going on for it, because both are developed in a very open source way. Everything is done on Github, there's a ton of packages and most users are open source enthusiasts. A lot of D activity is done here in forums and in bugzilla, a lot of code is used in proprietary projects so you don't hear about every single application that got created with D.
Apr 12 2019
prev sibling parent reply Margo <margo margotics.des> writes:
On Friday, 12 April 2019 at 13:50:42 UTC, SrMordred wrote:
 On Friday, 12 April 2019 at 08:02:30 UTC, JN wrote:
 more behind the scenes, around the same level of popularity as 
 Nim, Crystal.
Since i think this is a talk about popularity... I feel that Nim and Crystal have WAY more adoption/popularity than D, but im not sure if both are backed by any great group (like Rust). So I think a good point to focus this discussion is, why Nim and Crystal got the lead in popularity but not D?
As somebody who programs in Crystal, i find the statement that Crystal is leading in popularity is a bit of a overstatement. Nim probably has a even lower popularity then Crystal. Crystal suffers from a lot of the same issues that D does. Editor support is lacking. D technically has more and better Editor support but again but most editor support feel amateurism at best with bugs, lockups and more. Windows support is currently non-existing and being worked upon. D has that but ... it tends to be "fragile". Multithreading is being worked on but again ... D clearly is a much more advanced programming language with BetterC and the whole gamma of options. And this is where things turn into Crystal its advantage. Despite all the missing features, its so easy to get tasks setup and going. The roadblocks feel less of a issue. D just feels *old* with the 1001 command line options. I see so many times when a user has a issue, people responds with "do -xwys" command. And yes, it works but its a design flaw at the same time. A good modern programming language runs almost any task without a end user ever needing to learn half a manual of command line arguments. Do a search on this very message board and compare this to other languages. Most of my work these days is programming web applications. Lets be honest, the web and mobile will keep growing and intermixing more and more. Webasm is another sign of this. Yet, it ends up being a task and half to get even a basic HTTP solution going for D, let alone one that performs. Vibe-D when tested against real world scenarios makes PHP look like a Ferrari. We do not even start on the whole incompatibilities between D versions and Vibe-D ( or depending packages ). At my old job i spend a week trying to implement some code in D and being unhappy about all the other stuff i needed to write just to get it function. I spend a day in PHP and was finished. Sure, it was slower, used more memory but my time was way more valuable. Crystal when upgrading tends to be so easy to fix changes, where as a lot of the D eco system depends so much on specific versions of D. With constant changes for new features and removals of old ones, D keeps hurting so many packages. I see plugin authors simply giving up and not bothering fixing older code because its too much work. If we compare this to PHP, what gets so much unholy criticism from people ( a lot undeserved because years out of date information ), there seems to be a much more strong desire to keep things going. Because a lot of the eco system does not depend on specific PHP versions or it keeps a large amount of backward compatibility, we can run old 5.6 code that has not seen a update in 4 years without issues. Try running not updated 4 year old D code that is not a few basic lines and that depends on dependencies. Go ahead, i will wait :) This brings us back to Crystal. Its slow to develop because its only a few people also but they do have a main focus on keeping compatible with older code. And you feel this in the community and responses. I do not think D is dead but you feel a lot of people are somewhat allergic to outsiders here. A lot of topic by simply reading almost feel like "My precious!!!(Gollum)" as people are helpful but very fast to go apeshit if criticism come up as to why things are complicated. Especially if that user compares it to other languages. Now i see people mentioning D3 and i think by myself: If you can not make D1 and D2 a success without turning it into a massive fuzzball, what makes you think that D3 is any better? All you send up with is a even more split community and more resources down the drain. Do you want a solution? Sure and the answer is: There is non that people will accept! D is a marvelous piece of compiler but that is the issue. Everybody is so focus on the compiler and features aspect, that they forget it takes a army of grunds to make the eco system, editors etc AND to maintain them! Without a corporate backer, who wants to put time into your system, you have nothing that really lasts. Look at Jetbrain... Go got support very fast. Rust got a company and community backed plugin. D ... has a best a half supported community plugin that depends on one guy for most of the work. Visual Studio Code has the same issue. One guy doing most of the work. Their is simply very little focus on creating community multi backed solution beyond people posting here "why do you not do it". Somebody mentioned codingame just a few days ago... The first responds to this user: "You're probably in the best position, as a user of the site, to advocate D's inclusion.". Yes, a random newbie who asked why D was not on this website, where you learn to program needs to "do the work" to get D on it. It happens with so many topics and the person leaves, to never come back. Or this person will pick a fight as "why do i need to do that". So many people here think that if you disagree or find a issue, its your task to fix it. And while some people have the time, skill and motivation, MOST DO NOT! I said plenty already on this topic but its really a big part of the community here why D itself is not going forward. Too many Ph.D type attitudes but it backfires on the "common" man. Say what you want about Rust ( and it legion of zealots ) but they really worked hard to make community, editor and other support easier. Even cross compilation is so easy unlike a aforementioned language. And i do not even use Rust in my daily work. The reality is that a lot of this community is somewhat toxic and internally focused without it realizes itself. This is probably the main reason for D its failure to really grow outside a few companies and projects. People keep forgetting the basics. If its not dead simple, you can only sell your product to a already existing marked of complex users. Moving those users, with years of invested time into your product is HARD!!!! Any good sales person will tell you this. And that is a other issue. The lack of real useful things that makes a advanced user switch from C/C++ or whatever languages and pick up D before a language like Rust. We can say that D WASTED 20 years time and now has competitors that simply have their acts better together. Its like trying to piss in a stream, while your standing downstream. It just flows back on you. The reality is, D brings few new things to the market that a competitor can not copy ( C++ already did, so why switch ). D dropped the ball a long time ago and no offense guys but seeing the current state and its evolution, sure, you get a bit more attention but your not growing because of all the issues, code and more. I am sure that we shall see each other again in a few months when the next topic pops up with people complaining. The reality is, D simply does not evolve in a way to really make it gain any popularity that is required to grew its eco system. And now with competitors like Go, Rust, ... and minor competitors like Crystal, Nim, ... and the already established competitors taking D features a long time ago.
Apr 18 2019
parent Julian <julian.fondren gmail.com> writes:
On Thursday, 18 April 2019 at 23:43:26 UTC, Margo wrote:
 And this is where things turn into Crystal its advantage.
 Despite all the missing features, its so easy to get tasks
 setup and going. The roadblocks feel less of a issue. D just
 feels *old* with the 1001 command line options.
Crystal merits: it feels easy. D demerits: it has typical compiler options instead of subcommands. I felt that D was a lot easier than Crystal, but that's feelings for you. I didn't much like sudden requirements like senders = {} of String => Int32 in code that's otherwise free of explicit types. I didn't like Crystal's compile times. I had a lot more experiences that could be narrated "I bet this will work... oh it does!" in D than in Crystal. and I run it like a script, which is pretty good as far as 1001 command line options go.
 At my old job i spend a week trying to implement some code in D
 and being unhappy about all the other stuff i needed to write
 just to get it function. I spend a day in PHP and was finished.
 Sure, it was slower, used more memory but my time was way more
 valuable.
Just PHP, or a PHP framework? I bet if you just printed HTML from a little CGI script in D it'd be nearly as easy. I'm saying this seriously. I've written a lot of internal webapps like this, especially where the backend has very little to do. Nothing I couldn't do in D.
 Crystal when upgrading tends to be so easy to fix changes,
 where as a lot of the D eco system depends so much on specific
 versions of D. With constant changes for new features and
 removals of old ones, D keeps hurting so many packages.
That's too bad. My experience from learning the language from the D Programming Language (released 2010) was just that some of the imports had to be updated. Maybe that book just didn't cover the features that changed so much in the meantime.
 PHP, what gets so much unholy criticism
 from people ( a lot undeserved because years out of date
 information ),
Sorry, but this will never, ever, ever be true.
 Somebody mentioned codingame just a few days ago... The first
 responds to this user: "You're probably in the best position,
 as a user of the site, to advocate D's inclusion.". Yes, a
 random newbie who asked why D was not on this website, where
 you learn to program needs to "do the work" to get D on it.
Wow. That guy should be banned. The obviously preferable response to any question like this is "thanks! I've added this site to a list or made an issue or ticket out of it and someone will be emailing the owner to ask how we can help get D supported." Even if D is never added, this is action in the direction of spreading D and it's welcoming rather than dismissive. And even if D is never added, the questioner might choose to learn more about the language in the meantime, rather than giving up on such a hostile community.
 The reality is, D brings few new things to the market that a
 competitor can not copy ( C++ already did, so why switch ).
C++ is the only language I've ever stopped learning before even completing a tutorial, so I can't speak much on it, but every few years I'll watch a serious presentation about the language that has this kind of pattern: PRESENTER: Here's some code. Raise your hand if you'd write this code. AUDIENCE: *some hands are raised* P: haha, come on. Don't be shy. How many of you, really? A: *most hands raised* P: OK. Me too: *raises hand*. We're all wrong. This code is terrible. Nobody should ever write code like this. ... P: here's a way that's not so bad, but-- ... P: here's another way, but it-- ... P: this way is ideal, this is how the STL does it, but it is actually illegal under seven international anti-torture conventions to ask anyone to ever write code similar to this. Seven of my coworkers were found dead at their keyboards after writing such code. Most of the budget of this C++ convention is going towards therapists, this year, so that we can keep updating the STL without more than expected loss of life. ... P: and this is how I recommend you do it. This way still has some problems, in particular it's much less efficient than the ideal way, but it's the best compromise without compromising quality of life too much. Ever few years a presentation like that. The last one was titled "The Nightmare of Move Semantics for Trivial Classes" I don't think there's a feature you can add to C++ that will prevent you from having to know *all* of the options above, even if you only ever write the last, because you can still come across other people's code.
Apr 18 2019
prev sibling next sibling parent Kagamin <spam here.lot> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 It feels like to the rest of the programming universe, D 
 doesn't even exist. Sometimes I see threads on reddit like 
 "what's your favorite programming language" and I always look 
 for D but never find it.
What do you think of other languages? Is java great? Did you write an Electron program? Maybe PHP?
Apr 12 2019
prev sibling next sibling parent silentwatcher <silentwatcher aol.com> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 Sorry for that title, but this is something I have been 
 thinking about for a while...

 I honestly feel like D is a failure. I kinda just wanted to 
 vent about it and see what other people think.

 I have been using D since around 2012 or 2013, instantly fell 
 in love, use to post on the forms a lot under the name Tofu 
 Ninja. I was convinced D was the future but since then I have 
 become disheartened. The biggest thing that makes me feel like 
 this is that in the 7 years I have been using D I literally 
 have never met another programmer IRL who has even heard of it. 
 I put on my resume that I like D and every interview I get 
 asked about it, having to explain what D even is because they 
 have never heard of it. I have never seen a job posting listing 
 D. Never see any projects pop up on /r/programming using D. It 
 feels like to the rest of the programming universe, D doesn't 
 even exist. Sometimes I see threads on reddit like "what's your 
 favorite programming language" and I always look for D but 
 never find it.

 And honestly I don't think that is going to change. I feel like 
 D has failed.

 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years? Am I missing some part of the 
 picture? Or am I right and if so what can be done about it?
if too fell in love with it, about the same time. i completely gave up on it. gc, slow evolution and extremely opinionated group. i watch for the sake of the old days. who knows it? sometimes i meet programmers who know about it, but when taking to them nobody plans to do something with it. its an gc experiment with endless features - and more coming. They and i feel - not usable in the company world. cheers
Apr 12 2019
prev sibling next sibling parent Andre Pany <andre s-e-a-p.de> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 Sorry for that title, but this is something I have been 
 thinking about for a while...

 I honestly feel like D is a failure. I kinda just wanted to 
 vent about it and see what other people think.

 I have been using D since around 2012 or 2013, instantly fell 
 in love, use to post on the forms a lot under the name Tofu 
 Ninja. I was convinced D was the future but since then I have 
 become disheartened. The biggest thing that makes me feel like 
 this is that in the 7 years I have been using D I literally 
 have never met another programmer IRL who has even heard of it. 
 I put on my resume that I like D and every interview I get 
 asked about it, having to explain what D even is because they 
 have never heard of it. I have never seen a job posting listing 
 D. Never see any projects pop up on /r/programming using D. It 
 feels like to the rest of the programming universe, D doesn't 
 even exist. Sometimes I see threads on reddit like "what's your 
 favorite programming language" and I always look for D but 
 never find it.

 And honestly I don't think that is going to change. I feel like 
 D has failed.

 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years? Am I missing some part of the 
 picture? Or am I right and if so what can be done about it?
D is a hidden treasure, not many developers know it. But once you know it, you immediately fell in love. It is just superior to other languages currently available, in my opinion. At this point in time D got quite mature. It can be used in really large companies with great success. In my opinion it is now at the community to tell other developers about this great language, create articles, create content. . This is now the most important thing, advertising done by the people who uses D. Kind regards Andre
Apr 12 2019
prev sibling next sibling parent reply Nierjerson <Nierjerson somewhere.com> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 Sorry for that title, but this is something I have been 
 thinking about for a while...

 I honestly feel like D is a failure. I kinda just wanted to 
 vent about it and see what other people think.

 I have been using D since around 2012 or 2013, instantly fell 
 in love, use to post on the forms a lot under the name Tofu 
 Ninja. I was convinced D was the future but since then I have 
 become disheartened. The biggest thing that makes me feel like 
 this is that in the 7 years I have been using D I literally 
 have never met another programmer IRL who has even heard of it. 
 I put on my resume that I like D and every interview I get 
 asked about it, having to explain what D even is because they 
 have never heard of it. I have never seen a job posting listing 
 D. Never see any projects pop up on /r/programming using D. It 
 feels like to the rest of the programming universe, D doesn't 
 even exist. Sometimes I see threads on reddit like "what's your 
 favorite programming language" and I always look for D but 
 never find it.

 And honestly I don't think that is going to change. I feel like 
 D has failed.

 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years? Am I missing some part of the 
 picture? Or am I right and if so what can be done about it?
Yes D has failed if the goal is wide adoption. It will never gain wide recognition and use because the D community fails to realize that it's more than just the compiler and libraries. What makes a compiler successful is not just the compiler itself but the easy to create real world business solutions by the mass of programmers in the world. Such people are not interested in wasting their time trying to get things to work, they want a product that will allow them to get as much work done in the shorted amount of time. D fails miserably at that in the real world. D has no decent gui, gui designer, no decent audio library, no decent graphics library, no decent anything. The D community thinks that if it has a binding then it must be the same. Bindings are not solutions. One is just working in C, so what is the point of D then? When you look at the most successful compilers you will see they have a huge amount of resources available that work without issue. Essentially D costs too much and has too little in return. After all, you can pretty much do everything you want in C++ that you can do with D. Imagine, hypothetically, if when C++ was invented it was actually the D language. The sole reason that D has failed is the management of D has failed... and, of course, they will never accept that truth. They believe their methods are correct and working and the failure is not due to them. D is actually an old language and there are many new languages popping up like weeds... eventually D will not be so shiny and more and it will just become another weed. That is already happening actually. As many languages modify their designs to include what was great about D, D becomes less attractive. So, D started out with a bang but will finish as a whimper. It neglected so many important aspects of programming that it shot itself in the foot. Over time it won't be able to recover from this unless things seriously change about how it is managed. It is failed to reach escape velocity. Most programmers don't give a shit about meta programming and all the cool shit D can do. So what is the point of them using it when most other things suck? All the effort that D wasted in library after library could have been focused on creating the things that users want/need but the libraries are now defunct and are bit rotting. Eventually people will give up on maintaining D(in 10-20 years when new processors are out that require massive updating of D or a new OS comes about). D will die a slow and painful death. It didn't have to be that way but that is the outcome when you don't plan properly. It has happened many times with many things... It's nature at work. At most D could hope to do is get a large company with the resources to take it over like Microsoft... but they have no incentive to do that. Since D can integrate with C/C++ there is potential. But why would they do such a thing when they can just modify C++? D has never been used for a major commercial app. It touts all it's uses, which is minuscule compared to the major players and most of these use cases are more it computing applications/utilities than anything major. I believe D is a failure for very complex real world apps. It just can't handle the load. A large business isn't going to waste it's time with something that has so many drawbacks and few benefits... it makes no sense to them to use D for anything serious. Even though D can be used to write specific code, since it does not perfectly integrate what is the point of just not writing it in the main language, even if it requires a little more work? The only thing D has been really successful at is it's language design but that isn't enough to do much in this world.
Apr 12 2019
next sibling parent reply Andre Pany <andre s-e-a-p.de> writes:
On Friday, 12 April 2019 at 09:56:48 UTC, Nierjerson wrote:
 On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 [...]
Yes D has failed if the goal is wide adoption. It will never gain wide recognition and use because the D community fails to realize that it's more than just the compiler and libraries. [...]
This seems to be a quite pessimistic view based on wrong information. There are definitely succesful companies using D for their applications or additional tooling. Some of these companies you can see in the list on dlang.org, some others do just not announce which language they use, they simply use the best language for the job, which is D. Kind regards Andre
Apr 12 2019
parent reply silentwatcher <silentwatcher aol.com> writes:
On Friday, 12 April 2019 at 10:19:10 UTC, Andre Pany wrote:
 On Friday, 12 April 2019 at 09:56:48 UTC, Nierjerson wrote:
 On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 [...]
Yes D has failed if the goal is wide adoption. It will never gain wide recognition and use because the D community fails to realize that it's more than just the compiler and libraries. [...]
This seems to be a quite pessimistic view based on wrong information. There are definitely succesful companies using D for their applications or additional tooling.
mini crap
 Some of these companies you can see in the list on dlang.org, 
 some others do just not announce which language they use, they 
 simply use the best language for the job, which is D.

 Kind regards
 Andre
but i understand you, i didn't want think about the dying process of my mother either. the gentleman above was wright: D has no decent gui, gui designer, no decent audio library, no decent graphics library, no decent anything. The D community thinks that if it has a binding then it must be the same. Bindings are not solutions. Most programmers don't give a shit about meta programming and all the cool shit D can do. So what is the point of them using it when most other things suck?
Apr 12 2019
parent Julian <julian.fondren gmail.com> writes:
On Friday, 12 April 2019 at 10:30:56 UTC, silentwatcher wrote:
 D has no decent gui, gui designer, no decent audio library, no
 decent graphics library,
4/4 for libraries I wouldn't care the slightest about, and wouldn't consider when evaluating whether a language was useful or not. If a server needs a GUI, it can serve HTML.
Apr 12 2019
prev sibling next sibling parent Tofu Kaitlyn <katemmons0 gmail.com> writes:
On Friday, 12 April 2019 at 09:56:48 UTC, Nierjerson wrote:
 Yes D has failed if the goal is wide adoption. It will never 
 gain wide recognition and use because the D community fails to 
 realize that it's more than just the compiler and libraries.

 [.....]
This post sums up a lot of my feelings towards the current state of D. The part that stood out to me the most was the part calling D an old language. More and more it feels like D is getting worse, not better, feels like more half baked language features, and almost no progress on things that matter like ease of use and tools.
Apr 12 2019
prev sibling next sibling parent reply Chris <wendlec tcd.ie> writes:
On Friday, 12 April 2019 at 09:56:48 UTC, Nierjerson wrote:
 On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:

 Yes D has failed if the goal is wide adoption. [...]
Well, what can I say that hasn't been said before (including this thread)? Since I said good-bye to D last year my productivity has increased incredibly. I read a few days ago that Joakim had left the community (he once asked me why my attitude had changed so drastically). And you know what, it made me kinda sad. Do things like that even register with the D Foundation and / or community? One answer was "this would be an excellent topic for this year's GSoC", which is a total and utter lack of respect (although I hasten to say that I think the poster wasn't aware of this and didn't intend it this way). It has never occurred to the D leadership that Android and iOS are more important to developers than introducing yet another RefFancyTemplateCTFERangeAllocator which is memory safe, but not really, but it will be after DIP2001. Now there is talk of re-writing D, after the umpteenth half baked feature was introduced. We'll see, we'll see. IMO, the trouble really started when the D Foundation was set up. Instead of streamlining and stabilizing D, the whole thing turned into a closed shop with a "Hey, we are the lads" kinda attitude, and any CS theory or fashion of the day would finally be half baked into the language without a second thought. Without paying attention to users and the answer to complaints would be "we want to turn D into a functional style memory safe [...] language, that's why we had to introduce RefFancy, so eff your code!", except it still isn't and RefFancy has to be removed or replaced! Who would have guessed it would be at loggerheads with FancyRange!? It's the year 2019 (D is almost 20 years old), a lot of new languages have a sounder approach than D, they see what works and what doesn't, what programmers need (e.g. ARM) and what they don't need. Which is being pragmatic, and being pragmatic is a thing that D claims to be. A joke. Programmers need to get sh*t done, you know? And apart from all the fancy feature madness, there's this arrogant attitude towards users. To avoid criticism my words were twisted in such an obvious and blatant way that it was just ridiculous. And what's really funny is that mistakes made by the leadership, and the leadership alone, are now being socialized as in "the community this, the community that, and this has to change!". Ah, give me a break. The sad thing is that D had it all long before younger languages had it, but it preferred to drink all its money in the pub, dreaming of fancy features, mañana, mañana... PS For D zealots: add your favorite insult here, e.g. "entitled [...]"
Apr 12 2019
next sibling parent silentwatcher <silentwatcher aol.com> writes:
On Friday, 12 April 2019 at 11:52:18 UTC, Chris wrote:
 [...]
AMEN +1
Apr 12 2019
prev sibling next sibling parent reply bachmeier <no spam.net> writes:
On Friday, 12 April 2019 at 11:52:18 UTC, Chris wrote:

 Well, what can I say that hasn't been said before (including 
 this thread)? Since I said good-bye to D last year my 
 productivity has increased incredibly. I read a few days ago 
 that Joakim had left the community (he once asked me why my 
 attitude had changed so drastically). And you know what, it 
 made me kinda sad.
I've been ignoring these comments about Joakim, but since they keep coming up... You can't have a successful organization where you have people going off the rails. The things he was posting were downright strange, and it would be a massive turnoff to normal people to visit the forum and see something like that. To suggest otherwise defies logic.
 PS For D zealots: add your favorite insult here, e.g. "entitled 
 [...]"
These statements would be better left on Slashdot...they don't help your case, they make it look like you're unreasonable.
Apr 12 2019
parent reply Chris <wendlec tcd.ie> writes:
On Friday, 12 April 2019 at 13:19:01 UTC, bachmeier wrote:
 PS For D zealots: add your favorite insult here, e.g. 
 "entitled [...]"
These statements would be better left on Slashdot...they don't help your case, they make it look like you're unreasonable.
Ah well, damned if you do and damned if you don't. It's only that I've been called names here before and often the replies have been more on the esoteric side of things. But what did Joakim actually post that was so weird? I think D is getting to a stage where it's more of a religion than a tool. The signs are there: 1. criticism is considered weird / unreasonable (blasphemous?), sure we all know that Earth is a disc 2. topics are not addressed and the answers are often evasive and / or of a general philosophical or anecdotal nature 3. I've said it before: personal mistakes, wrong design decisions, are socialized and the whole community is "guilty" and has to "learn". I have a different take on leadership. 4. "At least we're not C++!" This is usually a sign of decay. But honestly, it's all been said over the years and nothing has changed...or changed for the worse.
Apr 12 2019
next sibling parent Tofu Kaitlyn <katemmons0 gmail.com> writes:
On Friday, 12 April 2019 at 13:43:46 UTC, Chris wrote:
 Ah well, damned if you do and damned if you don't.
Ignore criticisms... latch onto one superficial point in comment... proceed to call unreasonable...
Apr 12 2019
prev sibling next sibling parent Kagamin <spam here.lot> writes:
On Friday, 12 April 2019 at 13:43:46 UTC, Chris wrote:
 1. criticism is considered weird / unreasonable (blasphemous?), 
 sure we all know that Earth is a disc
That said, I don't know a community that does it better. Any examples?
 2. topics are not addressed and the answers are often evasive 
 and / or of a general philosophical or anecdotal nature
Shit is got done by libraries, dub should be enough for you? That's how all big languages do it: nuget, npm, maven, uh... C just uses tarballs, okay, but it's an exception and people complain about it way more than you.
 3. I've said it before: personal mistakes, wrong design 
 decisions, are socialized and the whole community is "guilty" 
 and has to "learn". I have a different take on leadership.
You can write a library with right design decisions and publish it on dub.
Apr 12 2019
prev sibling parent reply Nierjerson <Nierjerson somewhere.com> writes:
On Friday, 12 April 2019 at 13:43:46 UTC, Chris wrote:
 On Friday, 12 April 2019 at 13:19:01 UTC, bachmeier wrote:
 PS For D zealots: add your favorite insult here, e.g. 
 "entitled [...]"
These statements would be better left on Slashdot...they don't help your case, they make it look like you're unreasonable.
Ah well, damned if you do and damned if you don't. It's only that I've been called names here before and often the replies have been more on the esoteric side of things. But what did Joakim actually post that was so weird? I think D is getting to a stage where it's more of a religion than a tool. The signs are there: 1. criticism is considered weird / unreasonable (blasphemous?), sure we all know that Earth is a disc 2. topics are not addressed and the answers are often evasive and / or of a general philosophical or anecdotal nature 3. I've said it before: personal mistakes, wrong design decisions, are socialized and the whole community is "guilty" and has to "learn". I have a different take on leadership. 4. "At least we're not C++!" This is usually a sign of decay. But honestly, it's all been said over the years and nothing has changed...or changed for the worse.
This is generally what happens when an organization grows without proper structural control. Essentially it becomes a cult. A cult is created when dissenting opinions are shut out. It reinforces the main opinions, attracts cult followers(generally known as bootlickers, which are people who view the world not in intellectual means but in terms of master/slave relationships). There is a very real positive[meaning reinforced] feedback cycle that takes place because the negative[meaning opposing] feedback cycle has been removed. One see's this in all cults and fanatics. Politics and religion are the biggest cult creators. Unfortunately, when one becomes part of a cult, it tends to destroy their mind and they then bring their cult mentalities to other areas. Humans are insane, they cannot judge truth properly without proper experiences. Since they generally seek out only experiences that agree with their previous experiences they simply reinforce previously established mentalities. Since all mentalities are flawed, it is an unstable process that eventually diverges(although in practice, with correct social and parental guidance it can produce good results). Essentially anyone that disagree's with the cult is bludgeoned in to leaving. No truly intellectual common ground can be had. Most of the cult members are bootlickers and eventually the best bootlickers rise to become the leaders from which the cult becomes a cancer with no real purpose but to grow and survive. Ultimately it is the bootlickers, who generally are extremely ignorant since they do not know what real intelligence is. They simply reinforce the authorities views since they believe authorities must have true intelligence. By mimicking authorities they believe they will become an authority and become intelligent[again, for them authority and intelligence are identical, which is the flaw in their mind]. You can always tell a cult exists when people congregate and reinforce a singular opinion of leaders and some of them vie for "leadership" through what amounts to be a popularity contest. Anyone against that opinion is shunned, berated, exiled, etc. Now, I know what you are thinking... it sounds like I'm talking about pretty much all human organizations... yep... pretty much. It's the nature of how feedback works, doesn't matter if it's electrical, mechanical, social, mathematical... Hell, it is how we train neural nets. It seems to be how nature works itself. It's not the bootlickers fault, so to speak, but the leadership, who must understand what is going on to prevent the cultism from occurring in a negative way. The bootlickers cannot and will not change, so it is up to the leaders to guide them. Bootlickers are simply the child mind and they are the people who have no grown up. They are looking for guidance and acceptance. There are a few bootlickers in the forums. What you are describing is D's decent in to a cult. Most other popular programming languages have well established cult's. At least it's programming and not politics, religion, or war.
Apr 25 2019
parent reply Claude <no no.no> writes:
On Thursday, 25 April 2019 at 18:21:18 UTC, Nierjerson wrote:
 There are a few bootlickers in the forums. What you are 
 describing is D's decent in to a cult. Most other popular 
 programming languages have well established cult's. At least 
 it's programming and not politics, religion, or war.
More than a thousand lines of bitterness and resentment in that thread!... But why? Is it a joke? When's the punch-line coming? Why don't you just drink a beer or a Suze or whatever chills you out and forget a bit about D? A few years ago, Andrei created a post on this very forum called "OurSister" which was talking about RC-string. I won't explain the pun (that would be awkward), but that joke alone deserves a massive cult and some steady boot-licking. So please enjoy yourself more and have a good laugh.
Apr 26 2019
parent Nierjerson <Nierjerson somewhere.com> writes:
On Friday, 26 April 2019 at 08:32:47 UTC, Claude wrote:
 On Thursday, 25 April 2019 at 18:21:18 UTC, Nierjerson wrote:
 There are a few bootlickers in the forums. What you are 
 describing is D's decent in to a cult. Most other popular 
 programming languages have well established cult's. At least 
 it's programming and not politics, religion, or war.
More than a thousand lines of bitterness and resentment in that thread!... But why? Is it a joke? When's the punch-line coming?
Not bitterness, just facts.
 Why don't you just drink a beer or a Suze or whatever chills 
 you out and forget a bit about D?

 A few years ago, Andrei created a post on this very forum 
 called "OurSister" which was talking about RC-string. I won't 
 explain the pun (that would be awkward), but that joke alone 
 deserves a massive cult and some steady boot-licking.

 So please enjoy yourself more and have a good laugh.
Do you realize the amount of pain and suffering cults have caused on humanity just in the last century? All the wars, all of politics, all the fanatical psychos that root for their favorite sports teams and when they lose go on a rampage, all the religious nuts, ... You might find pain and suffering of others a joke or fun but I don't. It's completely unnecessary and shows a lack of intelligence and compassion. While D's cult may not create much pain and suffering(Although clearly it creates some issues) the point was to explain why, to Chris... You failed to understand that point or learn from it. My point was to tell him a little bit about how the human mind works enough to explain why "communities" end up the way they do. It's something out of his control for the most part and really, ultimately, has nothing to do with the D language and just how things work... Just as gravity works a very precise way, as heat, as energy, as most things, so does human insanity. Why is it relevant to understand this rather than just blowing it off, chilling, and having a beer? Because most of the people that are in to just blowing stuff off, chilling, and having a beer are the ones who usually allow cults to grow unabashed because it just gets in the way of there having their "fun"... of course, they don't realize they too are in a cult perpetuating the same insanity.
Apr 26 2019
prev sibling next sibling parent Tofu Kaitlyn <katemmons0 gmail.com> writes:
On Friday, 12 April 2019 at 11:52:18 UTC, Chris wrote:
 [stuff]...
I basically stopped visiting the forums around when the foundation started... so sorry if I am not up on all that has happened since. Wut is all this about Joakim?
Apr 12 2019
prev sibling next sibling parent reply Radu <void null.pt> writes:
On Friday, 12 April 2019 at 11:52:18 UTC, Chris wrote:
 On Friday, 12 April 2019 at 09:56:48 UTC, Nierjerson wrote:
 On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:

 Yes D has failed if the goal is wide adoption. [...]
Well, what can I say that hasn't been said before (including this thread)? Since I said good-bye to D last year my productivity has increased incredibly. I read a few days ago that Joakim had left the community (he once asked me why my attitude had changed so drastically). And you know what, it made me kinda sad. Do things like that even register with the D Foundation and / or community? One answer was "this would be an excellent topic for this year's GSoC", which is a total and utter lack of respect (although I hasten to say that I think the poster wasn't aware of this and didn't intend it this way). It has never occurred to the D leadership that Android and iOS are more important to developers than introducing yet another RefFancyTemplateCTFERangeAllocator which is memory safe, but not really, but it will be after DIP2001. Now there is talk of re-writing D, after the umpteenth half baked feature was introduced. We'll see, we'll see. IMO, the trouble really started when the D Foundation was set up. Instead of streamlining and stabilizing D, the whole thing turned into a closed shop with a "Hey, we are the lads" kinda attitude, and any CS theory or fashion of the day would finally be half baked into the language without a second thought. Without paying attention to users and the answer to complaints would be "we want to turn D into a functional style memory safe [...] language, that's why we had to introduce RefFancy, so eff your code!", except it still isn't and RefFancy has to be removed or replaced! Who would have guessed it would be at loggerheads with FancyRange!? It's the year 2019 (D is almost 20 years old), a lot of new languages have a sounder approach than D, they see what works and what doesn't, what programmers need (e.g. ARM) and what they don't need. Which is being pragmatic, and being pragmatic is a thing that D claims to be. A joke. Programmers need to get sh*t done, you know? And apart from all the fancy feature madness, there's this arrogant attitude towards users. To avoid criticism my words were twisted in such an obvious and blatant way that it was just ridiculous. And what's really funny is that mistakes made by the leadership, and the leadership alone, are now being socialized as in "the community this, the community that, and this has to change!". Ah, give me a break. The sad thing is that D had it all long before younger languages had it, but it preferred to drink all its money in the pub, dreaming of fancy features, mañana, mañana... PS For D zealots: add your favorite insult here, e.g. "entitled [...]"
Interesting. While I don't know your work with Dlang, I quite regret having Joaking leaving the community. He contributed greatly to the Android port, code reviews, and LDC, to name a few. He helped me alot with reviews and feedback on bugs. I hope he would change his mind someday. I'm fascinated on what makes you, or any other poster vent on the forums? Assuming trolling is out of the question. If you find that Dlang doesn't work for you, and there is no match between expectations and reality, I think one would just mind their business and move on. One would think that having so vivid reactions on things that don't work out for you, would mean that you have a vested interest. There are open PRs that sit on Github rotting, you have a list of bugs that you added but you got no response or some unsatisfactory response, you donated a bunch of money for a goal that was not realized. Something? I can see that constructive criticism can be applied anytime, this is desired and healthy. There are really annoying things with Dlang management, I really hate the whole Interpolated Strings debacle for example, but I see that there is wish to improve and steps are made to fix them. Anyhow, as strange as it sounds, I just wish that there would be more of Joakim's type in the detractors list then whatever we have now.
Apr 12 2019
parent reply Chris <wendlec tcd.ie> writes:
On Friday, 12 April 2019 at 13:57:24 UTC, Radu wrote:
 Interesting.

 While I don't know your work with Dlang, I quite regret having 
 Joaking leaving the community.
 He contributed greatly to the Android port, code reviews, and 
 LDC, to name a few. He helped me alot with reviews and feedback 
 on bugs.
 I hope he would change his mind someday.
The question is: What made him leave? Nobody seems to care about that, which I find both surprising and sad. He wasn't just a random user, you know?
 I'm fascinated on what makes you, or any other poster vent on 
 the forums?
 Assuming trolling is out of the question.
No, I'm not trolling, I don't even visit the forum regularly anymore.
 If you find that Dlang doesn't work for you, and there is no 
 match between expectations and reality, I think one would just 
 mind their business and move on.
The blame is constantly put on the user "your expectations were too high, what did you expect?". It doesn't occur to anyone that the completely chaotic language development may turn people off? As you mentioned (high) expectations, you're indirectly admitting that D is sub-substandard. "D is great! But don't expect too much!" That's funny.
 One would think that having so vivid reactions on things that 
 don't work out for you, would mean that you have a vested 
 interest.
Conjecture and assumptions. Now you tell me what possible vested interest I could have. Do you think I'm a shill of Big Software that wants to destroy small software? Yeah no, don't address the criticism but accuse critics of having a vested interest. It's an all too common pattern when people begin to realize that the emperor is wearing no clothes.[1]
 There are open PRs that sit on Github rotting, you have a list 
 of bugs that you added but you got no response or some 
 unsatisfactory response, you donated a bunch of money for a 
 goal that was not realized. Something?
Where should I start?
 I can see that constructive criticism can be applied anytime, 
 this is desired and healthy. There are really annoying things 
 with Dlang management, I really hate the whole Interpolated 
 Strings debacle for example, but I see that there is wish to 
 improve and steps are made to fix them.
D would have to be rewritten. It's become unmaintainable. Also, constructive criticism is usually shrugged off with the remark "What did you expect? A functional language? Go on!" [1] https://en.wikipedia.org/wiki/The_Emperor%27s_New_Clothes
Apr 12 2019
next sibling parent Timon Gehr <timon.gehr gmx.ch> writes:
On 12.04.19 16:44, Chris wrote:
 As you mentioned (high) expectations
In the real world, things cannot always be totally ordered.
Apr 12 2019
prev sibling next sibling parent reply Kagamin <spam here.lot> writes:
On Friday, 12 April 2019 at 14:44:06 UTC, Chris wrote:
 The blame is constantly put on the user "your expectations were 
 too high, what did you expect?". It doesn't occur to anyone 
 that the completely chaotic language development may turn 
 people off? As you mentioned (high) expectations, you're 
 indirectly admitting that D is sub-substandard. "D is great! 
 But don't expect too much!" That's funny.
The ecosystem may be. But what is standard? Are Qt bindings With visual designers for all of them. And it must be effortless too.
Apr 12 2019
parent Paolo Invernizzi <paolo.invernizzi gmail.com> writes:
On Friday, 12 April 2019 at 15:46:45 UTC, Kagamin wrote:
 On Friday, 12 April 2019 at 14:44:06 UTC, Chris wrote:
 The blame is constantly put on the user "your expectations 
 were too high, what did you expect?". It doesn't occur to 
 anyone that the completely chaotic language development may 
 turn people off? As you mentioned (high) expectations, you're 
 indirectly admitting that D is sub-substandard. "D is great! 
 But don't expect too much!" That's funny.
The ecosystem may be. But what is standard? Are Qt bindings With visual designers for all of them. And it must be effortless too.
Qt it's covering it's field pretty well... PHP? You can stream a QT UI from an embedded ARM device to you iPad via WebGL *right now*: it's covering the need to use it from a browser. Javascript? Qt QML can use javascript libraries, *right now*: it's covering the need to use the enormous amount of JS code for spice the UI since long time, and they are now official supported bindings till 5.12, the LTS release: they are covering QT usage from the enormous ecosystem that's python. The visual designer part of the QT Creator is not perfect, but I've used it personally to design the UI of a PySide (PyQT) SQL application more than *ten years ago*: they are covering the Designer needs. With a clever modification of C++ (signal / slot) and a clever, consistent *battery included* standard library (yes, the "old way" of thinking about standard libraries) they are simply dominating a huge market... - P
Apr 12 2019
prev sibling parent Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Friday, 12 April 2019 at 14:44:06 UTC, Chris wrote:
 The question is: What made him leave?
A combination of him seeing the foundation as wasting money on the idea of conferences, a traditional D forum debate™ that followed, deletion of some posts by moderators, and their refusing to go back on that.
 Nobody seems to care about that, which I find both surprising 
 and sad.
I care, and was very annoyed about the response.
 He wasn't just a random user, you know?
I know, it is a great loss.
 There are open PRs that sit on Github rotting, you have a list 
 of bugs that you added but you got no response or some 
 unsatisfactory response, you donated a bunch of money for a 
 goal that was not realized. Something?
Where should I start?
I do the Pull Request management these days. Assuming your own PRs: rebase it, then ping me (I'm a bit busy at the moment with conferences and my regular mail client is geolocked (stupid MS security setting that I can't figure out how to change so I apologise for any late replies).
 I can see that constructive criticism can be applied anytime, 
 this is desired and healthy. There are really annoying things 
 with Dlang management, I really hate the whole Interpolated 
 Strings debacle for example, but I see that there is wish to 
 improve and steps are made to fix them.
D would have to be rewritten. It's become unmaintainable.
I don't think its quite there yet, but it is getting dangerously close to the brink, hence the AGM for sorting this stuff out. If you have any topics that you feel need discussing and are not on the list[1] already, please make a PR. [1]: https://github.com/thewilsonator/Dlang-AGM
Apr 12 2019
prev sibling next sibling parent reply Kagamin <spam here.lot> writes:
On Friday, 12 April 2019 at 11:52:18 UTC, Chris wrote:
 (e.g. ARM)
There's https://github.com/ldc-developers/ldc/releases/download/v1.15.0/ldc2-1.15.0-linux-aarch64.tar.xz
Apr 12 2019
parent Chris <wendlec tcd.ie> writes:
On Friday, 12 April 2019 at 14:34:10 UTC, Kagamin wrote:
 On Friday, 12 April 2019 at 11:52:18 UTC, Chris wrote:
 (e.g. ARM)
There's https://github.com/ldc-developers/ldc/releases/download/v1.15.0/ldc2-1.15.0-linux-aarch64.tar.xz
Great stuff, seriously. But painless? D could come very close to this too: https://kotlinlang.org/docs/reference/native-overview.html But imagine one day you have a great infrastructure and you can compile to Android and iOS with a switch -android / -ios etc. Then the D Foundation announces new features that will break old code or "Phobos is in maintenance mode now, we are working on Phobos2", ah and did I mention autodecode? Who wants to risk it? You know, people have to make a living, it's not just a game of features.
Apr 12 2019
prev sibling parent reply Paolo Invernizzi <paolo.invernizzi gmail.com> writes:
On Friday, 12 April 2019 at 11:52:18 UTC, Chris wrote:
 On Friday, 12 April 2019 at 09:56:48 UTC, Nierjerson wrote:
 [...]
Well, what can I say that hasn't been said before (including this thread)? Since I said good-bye to D last year my productivity has increased incredibly. I read a few days ago that Joakim had left the community (he once asked me why my attitude had changed so drastically). And you know what, it made me kinda sad. Do things like that even register with the D Foundation and / or community? One answer was "this would be an excellent topic for this year's GSoC", which is a total and utter lack of respect (although I hasten to say that I think the poster wasn't aware of this and didn't intend it this way). It has never occurred to the D leadership that Android and iOS are more important to developers than introducing yet another RefFancyTemplateCTFERangeAllocator which is memory safe, but not really, but it will be after DIP2001. [...]
I understand your feeling, but I think that D is approaching a pivotal point: the recent post of Andrei and Walter on the forum are fresh air to breath... On one point I agree: It's time to get rid of all the wrong decisions done in the past, and simplify the language, founding it over the strong points learned from D2. It's time for D3. - Paolo
Apr 12 2019
parent reply bachmeier <no spam.net> writes:
On Friday, 12 April 2019 at 15:49:48 UTC, Paolo Invernizzi wrote:


 It's time for D3.

 - Paolo
The first step will be to stop saying D2 almost killed the language. I was not a user of the language at that time, but my reading is that the transition was a massive screwup. If the language doesn't evolve it will die.
Apr 12 2019
next sibling parent reply Paolo Invernizzi <paolo.invernizzi gmail.com> writes:
On Friday, 12 April 2019 at 15:58:54 UTC, bachmeier wrote:
 On Friday, 12 April 2019 at 15:49:48 UTC, Paolo Invernizzi 
 wrote:


 It's time for D3.

 - Paolo
The first step will be to stop saying D2 almost killed the language. I was not a user of the language at that time, but my reading is that the transition was a massive screwup. If the language doesn't evolve it will die.
The transition between D1 and D2 was problematic, that's true, (but the problem was the duality between Phobos/Tango), but happened, successfully at the end. The transition between Python 2 and Python 3 was problematic, but happened, and Python is flourishing... does it worth? Being someone who worked with Python strings / bytes in both 2 and 3, yes, it worths! - P
Apr 12 2019
parent reply "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Fri, Apr 12, 2019 at 04:31:51PM +0000, Paolo Invernizzi via Digitalmars-d
wrote:
 On Friday, 12 April 2019 at 15:58:54 UTC, bachmeier wrote:
 On Friday, 12 April 2019 at 15:49:48 UTC, Paolo Invernizzi wrote:
 It's time for D3.
 
 - Paolo
The first step will be to stop saying D2 almost killed the language. I was not a user of the language at that time, but my reading is that the transition was a massive screwup. If the language doesn't evolve it will die.
+1. This is why I heartily support Andrei's recent stance about std.v2. I don't agree with his claim that it can't be done because of our present (lack of) manpower. There are other issues involved with that, that I don't want to get into here, but D really needs to embrace change rather than fear it. Trying to get something as complex as a programming language right from the get-go is impossible. What you lay down at first can only be an approximation at best, and is bound to need revision later as your direction becomes clearer. Whatever D started out as was only a faint shadow of what it became today, and similarly what we have today is only a faint shadow of what it might become in the future. The moment we let the past stop the future is the moment D is dead.
 The transition between D1 and D2 was problematic, that's true, (but
 the problem was the duality between Phobos/Tango), but happened,
 successfully at the end.
 
 The transition between Python 2 and Python 3 was problematic, but
 happened, and Python is flourishing...  does it worth? Being someone
 who worked with Python strings / bytes in both 2 and 3, yes, it
 worths!
[...] Yes, and I hope std.v2 will happen. And not just happen, I hope there will be a std.v3 in the future, and a std.v4 in the distant future. T -- Not all rumours are as misleading as this one.
Apr 12 2019
parent Nierjerson <Nierjerson somewhere.com> writes:
On Friday, 12 April 2019 at 16:56:25 UTC, H. S. Teoh wrote:
 On Fri, Apr 12, 2019 at 04:31:51PM +0000, Paolo Invernizzi via 
 Digitalmars-d wrote:
 On Friday, 12 April 2019 at 15:58:54 UTC, bachmeier wrote:
 On Friday, 12 April 2019 at 15:49:48 UTC, Paolo Invernizzi 
 wrote:
 It's time for D3.
 
 - Paolo
The first step will be to stop saying D2 almost killed the language. I was not a user of the language at that time, but my reading is that the transition was a massive screwup. If the language doesn't evolve it will die.
+1. This is why I heartily support Andrei's recent stance about std.v2. I don't agree with his claim that it can't be done because of our present (lack of) manpower. There are other issues involved with that, that I don't want to get into here, but D really needs to embrace change rather than fear it. Trying to get something as complex as a programming language right from the get-go is impossible. What you lay down at first can only be an approximation at best, and is bound to need revision later as your direction becomes clearer. Whatever D started out as was only a faint shadow of what it became today, and similarly what we have today is only a faint shadow of what it might become in the future. The moment we let the past stop the future is the moment D is dead.
I agree with this. Also, one must build it for them to come, meaning that the manpower comes with progress. It is a illogical thing to believe that we can't do something because X is not in place when the very fact that X is an effect from doing that thing. See, if people saw that D was headed in the right direction they would be more likely too invest their time, and as some of these people do it, D has more man power, and more progress is made, and then more people come, and more man power exists and more people come. It's sort of like the avalanche effect with transistors. It really works this way with humans(as if humans were electrons). The argument should be "How much time do we want to allocate this week to task X: 5 days? 4 hours? 1 minute?" and so the time is allocated and progress is made. That is all that matters. It's basic scheduling and project management. The thing is, allocating 0s to something stops all progress. Even 1s is better than 0. At least with 1s, in theory, the goal will be reached. [Good project management comes from trying to optimize the completion time of all tasks. There is even software that helps optimize this using advanced mathematics and takes in to account many of the standard issues. It would be a good thing for D, if it cares about progress, to invest in such a tool.]
 The transition between D1 and D2 was problematic, that's true, 
 (but the problem was the duality between Phobos/Tango), but 
 happened, successfully at the end.
 
 The transition between Python 2 and Python 3 was problematic, 
 but happened, and Python is flourishing...  does it worth? 
 Being someone who worked with Python strings / bytes in both 2 
 and 3, yes, it worths!
[...] Yes, and I hope std.v2 will happen. And not just happen, I hope there will be a std.v3 in the future, and a std.v4 in the distant future.
It can only happen by planning. Without proper planning there is an inevitable end.[Of course, there is an end to all things I suppose but that is completely out of our control]
Apr 12 2019
prev sibling parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Friday, 12 April 2019 at 15:58:54 UTC, bachmeier wrote:
 On Friday, 12 April 2019 at 15:49:48 UTC, Paolo Invernizzi 
 wrote:


 It's time for D3.

 - Paolo
The first step will be to stop saying D2 almost killed the language. I was not a user of the language at that time, but my reading is that the transition was a massive screwup. If the language doesn't evolve it will die.
You mean D1? I hope we're not there already with D2!
Apr 12 2019
parent reply bachmeier <no spam.net> writes:
On Friday, 12 April 2019 at 18:22:04 UTC, Nicholas Wilson wrote:
 On Friday, 12 April 2019 at 15:58:54 UTC, bachmeier wrote:
 On Friday, 12 April 2019 at 15:49:48 UTC, Paolo Invernizzi 
 wrote:


 It's time for D3.

 - Paolo
The first step will be to stop saying D2 almost killed the language. I was not a user of the language at that time, but my reading is that the transition was a massive screwup. If the language doesn't evolve it will die.
You mean D1? I hope we're not there already with D2!
I was referring to the D1 -> D2 transition. It has been claimed by Walter that it nearly killed the language so he doesn't want D2 -> D3.
Apr 12 2019
parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Fri, Apr 12, 2019 at 06:29:01PM +0000, bachmeier via Digitalmars-d wrote:
 On Friday, 12 April 2019 at 18:22:04 UTC, Nicholas Wilson wrote:
 On Friday, 12 April 2019 at 15:58:54 UTC, bachmeier wrote:
 On Friday, 12 April 2019 at 15:49:48 UTC, Paolo Invernizzi wrote:
 It's time for D3.
 
 - Paolo
The first step will be to stop saying D2 almost killed the language. I was not a user of the language at that time, but my reading is that the transition was a massive screwup. If the language doesn't evolve it will die.
You mean D1? I hope we're not there already with D2!
I was referring to the D1 -> D2 transition. It has been claimed by Walter that it nearly killed the language so he doesn't want D2 -> D3.
Yes, that's been Walter & Andrei's motto for the last X number of years now. Thing is, though, that at *some* point you just have to move on. The only unchanging language is a dead one; this applies both in natural language and programming languages. That's why it was so refreshing to hear Andrei propose std.v2 recently. That's a good first step from the past few years' worth of "we dare not fix X because it might break code". I hope there will eventually be a D3. And a D4. T -- Живёшь только однажды.
Apr 12 2019
prev sibling next sibling parent reply thedeemon <dlang thedeemon.com> writes:
 On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 The biggest thing that makes me feel like this is that in the 
 7 years I have been using D I literally have never met another 
 programmer IRL who has even heard of it. I put on my resume 
 that I like D and every interview I get asked about it, having 
 to explain what D even is because they have never heard of it. 
 I have never seen a job posting listing D. Never see any 
 projects pop up on /r/programming using D. It feels like to 
 the rest of the programming universe, D doesn't even exist.
Personally I've noticed both on reddit and on some non-English-speaking social networks that at least awareness about D has risen a lot in last 2-3 years. More people know it exists and some are at least familiar with its nicer features. Maybe a lot less who actually use it. IRL around me everyone knows about D, but that's because I work in a D-using company. ;) But in general I understand your feeling. There are so many languages now, not everyone can be in top 10, so there is a lot of second-tier ones. Usable for whoever is brave enough to use them, but not mainstream. D is one of them, that's ok for me. I love such languages, be it D, OCaml, Clean, Pony or even less known ones. Shall we call "not in top-10" a failure? Depends on the original goals, I guess. On Friday, 12 April 2019 at 09:56:48 UTC, Nierjerson wrote:
 Yes D has failed if the goal is wide adoption. It will never 
 gain wide recognition and use because the D community fails to 
 realize that it's more than just the compiler and libraries.
With a small community, without a big corporation behind a language, it's hard to expect anything else. The situation is very similar for most second-tier languages.
 D has no decent gui, gui designer, no decent audio library, no 
 decent graphics library, no decent anything.
Back in 2012 I used DFL for GUI on Windows (pretty decent) and it came with Entice Designer - a GUI tool for building GUIs with DFL. I guess now it's probably abandoned, but it did work ok back then. I've made a few apps with DFL. Then some more with DLangUI, another fine GUI library, even cross-platform this time. Graphics library? I dunno, what should be there that's not already in one of D libs available? For me, if it's raster graphics, being able to create bitmaps and output them is usually enough, I can do the rest by hand (I started doing graphics when it was just "mov ax, 13h; call 10h; now we have a memory-mapped 320x200 bitmap with 256 colours palette, enjoy!") People make 3D engines in D, I've made a video processing app in D and another about photo processing. Audio processing? Probably. That's niche enough, people like p0nce do it manually in D but professionaly. Again, it's hard to expect a big variety of high-quality tools and libraries from a small community of enthusiasts. But that's only natural.
Apr 12 2019
parent thedeemon <dlang thedeemon.com> writes:
On Friday, 12 April 2019 at 13:10:15 UTC, thedeemon wrote:
  "mov ax, 13h; call 10h;
Correction: "int 10h", of course. B81300CD10.
Apr 12 2019
prev sibling parent Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Friday, 12 April 2019 at 09:56:48 UTC, Nierjerson wrote:
 Yes D has failed if the goal is wide adoption. It will never 
 gain wide recognition and use because the D community fails to 
 realize that it's more than just the compiler and libraries.

 What makes a compiler successful is not just the compiler 
 itself but the easy to create real world business solutions by 
 the mass of programmers in the world. Such people are not 
 interested in wasting their time trying to get things to work, 
 they want a product that will allow them to get as much work 
 done in the shorted amount of time. D fails miserably at that 
 in the real world.
I think you will find that D _is_ used successfully in businesses, if not the businesses you'd like to see it be used in.
 D has no decent gui, gui designer, no decent audio library, no 
 decent graphics library, no decent anything.
Dlangui is fine, Guillaume Piolat does Audio in D, I presume his libraries are good, vibe. is pretty awesome, but I take your point.
 The D community thinks that if it has a binding then it must be 
 the same. Bindings are not solutions. One is just working in C, 
 so what is the point of D then?
Au contraire, a good binding means interoperability and you don't have to design, engineer, develop, and document (as much) the thing you want to do.
 Essentially D costs too much and has too little in return.
That is a business decision that you need to evaluate.
 After all, you can pretty much do everything you want in C++ 
 that you can do with D.
Most certainly not, anything that requires reflection you can't.
 The sole reason that D has failed is the management of D has 
 failed...
It hasn't failed completely, yet... the dconf AGM will hopefully change things.
 Most programmers don't give a shit about meta programming and 
 all the cool shit D can do.
Even if they don't care directly, the cascade effects are significant, i.e. they don't care that they can do it directly, they care that they can use what someone else has written.
 So what is the point of them using it when most other things 
 suck? All the effort that D wasted in library after library 
 could have been focused on creating the things that users 
 want/need but the libraries are now defunct and are bit rotting.
c.f. bindings
 Eventually people will give up on maintaining D(in 10-20 years 
 when new processors are out that require massive updating of D 
 or a new OS comes about). D will die a slow and painful death. 
 It didn't have to be that way but that is the outcome when you 
 don't plan properly.  It has happened many times with many 
 things... It's nature at work.
Maybe, maybe not.
 At most D could hope to do is get a large company with the 
 resources to take it over like Microsoft... but they have no 
 incentive to do that. Since D can integrate with C/C++ there is 
 potential. But why would they do such a thing when they can 
 just modify C++?

 D has never been used for a major commercial app. It touts all 
 it's uses, which is minuscule compared to the major players and 
 most of these use cases are more it computing 
 applications/utilities than anything major. I believe D is a 
 failure for very complex real world apps. It just can't handle 
 the load. A large business isn't going to waste it's time with 
 something that has so many drawbacks and few benefits... it 
 makes no sense to them to use D for anything serious. Even 
 though D can be used to write specific code, since it does not 
 perfectly integrate what is the point of just not writing it in 
 the main language, even if it requires a little more work?
Just because you don't see then doesn't mean they don't exist.
Apr 12 2019
prev sibling next sibling parent Radu <void null.pt> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 Sorry for that title, but this is something I have been 
 thinking about for a while...

 I honestly feel like D is a failure. I kinda just wanted to 
 vent about it and see what other people think.

 I have been using D since around 2012 or 2013, instantly fell 
 in love, use to post on the forms a lot under the name Tofu 
 Ninja. I was convinced D was the future but since then I have 
 become disheartened. The biggest thing that makes me feel like 
 this is that in the 7 years I have been using D I literally 
 have never met another programmer IRL who has even heard of it. 
 I put on my resume that I like D and every interview I get 
 asked about it, having to explain what D even is because they 
 have never heard of it. I have never seen a job posting listing 
 D. Never see any projects pop up on /r/programming using D. It 
 feels like to the rest of the programming universe, D doesn't 
 even exist. Sometimes I see threads on reddit like "what's your 
 favorite programming language" and I always look for D but 
 never find it.

 And honestly I don't think that is going to change. I feel like 
 D has failed.

 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years? Am I missing some part of the 
 picture? Or am I right and if so what can be done about it?
Meeting your popularity expectations, yes, I would say it has failed. But, I would say this is also a great thing, being popular is not necessary a good thing all the time. I'm amazed by how much a group of passionate people with little corporate support can achieve, you have to check the PRs on Github and the lively discussions on this forum. I would be more worried if Dlang would lose its contributors critical mass. I have witnessed during the years some talented people leaving the community, mostly due to friction with how things were run or communicated. Recently there is a breath of fresh air, as vision and attitude toward setting goals and clearly communicating them to the community coming from Andrei and Walter. The result, some old dissharted contributors have re-joined and started to do Great&Right Work™. There are also pretty encouraging signals from the students joining the D GSoC program. We should capture their interest, and keep some of the talented ones as contributors. What matters in the end is that Dlang stays true to its core principles, native system programing with pragmatic productivity, and keeps improving quality across the board. People, including myself, are using Dlang for interesting work, so for a group of us this is not a silly language experiment. It brings home the bacon, so to speak. Maybe we are not very vocal as other communities are but D runs a bunch of systems, commercial or not, already.
Apr 12 2019
prev sibling next sibling parent bachmeier <no spam.net> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:

 And honestly I don't think that is going to change. I feel like 
 D has failed.

 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years? Am I missing some part of the 
 picture? Or am I right and if so what can be done about it?
You have a very specific (and arbitrary) definition of failure. If the only reason to use a language is "popularity", presumably so you can financially benefit from it, then go with one of the small number of languages that are heavily used today. Language use has very little to do with the language itself. The biggest factor i determining language popularity today is language popularity five years ago. The cost to changing is too high and the benefits too small for companies to make a change. D has succeeded in my opinion. It provides me with a language I can use to get things done. That's really all a language can do. Are there areas that D is not the best choice? Of course. Folks complain "D doesn't work for my use case." Well C++ isn't a good choice for web development, Ruby isn't a good choice for high performance computing, Java isn't a good choice for embedded programming, and Javascript isn't a good choice for writing an operating system. That doesn't mean any of those languages has failed. There are plenty of cases where D is a good choice.
Apr 12 2019
prev sibling next sibling parent reply Timon Gehr <timon.gehr gmx.ch> writes:
On 12.04.19 09:35, Tofu Kaitlyn wrote:
 
 I honestly feel like D is a failure. I kinda just wanted to vent about 
 it and see what other people think.
I honestly feel like D is a big success. The failure is your own.
Apr 12 2019
parent reply Tofu Kaitlyn <katemmons0 gmail.com> writes:
On Friday, 12 April 2019 at 13:22:32 UTC, Timon Gehr wrote:
 On 12.04.19 09:35, Tofu Kaitlyn wrote:
 
 I honestly feel like D is a failure. I kinda just wanted to 
 vent about it and see what other people think.
I honestly feel like D is a big success. The failure is your own.
Thank You for this well thought out response, you completely changed my mind, it's obvious you took my feelings/opinion seriously...
Apr 12 2019
parent Timon Gehr <timon.gehr gmx.ch> writes:
On 12.04.19 15:37, Tofu Kaitlyn wrote:
 On Friday, 12 April 2019 at 13:22:32 UTC, Timon Gehr wrote:
 On 12.04.19 09:35, Tofu Kaitlyn wrote:
 I honestly feel like D is a failure. I kinda just wanted to vent 
 about it and see what other people think.
I honestly feel like D is a big success. The failure is your own.
Thank You for this well thought out response,
You are welcome.
 you completely changed my 
 mind, it's obvious you took my feelings/opinion seriously...
 
On the off chance that this is sarcasm, let me elaborate: It seems like you picked up D hoping it would become more popular than it has. Personally, I don't care about popularity.
Apr 12 2019
prev sibling next sibling parent reply "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Fri, Apr 12, 2019 at 07:35:05AM +0000, Tofu Kaitlyn via Digitalmars-d wrote:
[...]
 I honestly feel like D is a failure.
[...]
 I duno... what do yall think? Is D going to somehow explode in
 popularity in 5-10 years?
[...] There lies the problem: you're equating success with popularity. They can be correlated, to some extent, but they are certainly not the same thing. Personally, I couldn't care less about popularity. After what I've seen in the industry over the past 2-3 decades, I've become very cynical about popularity. What I *do* care for is a language with strong technical merit. D has that, to some extent -- I'm not going to pretend D is perfect either, as I do find a lot to be desired in it. But it's much better than the alternatives I've tried, so for the time being, it's my language of choice. But obviously, YMMV. T -- War doesn't prove who's right, just who's left. -- BSD Games' Fortune
Apr 12 2019
parent reply Nierjerson <Nierjerson somewhere.com> writes:
On Friday, 12 April 2019 at 14:30:53 UTC, H. S. Teoh wrote:
 On Fri, Apr 12, 2019 at 07:35:05AM +0000, Tofu Kaitlyn via 
 Digitalmars-d wrote: [...]
 I honestly feel like D is a failure.
[...]
 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years?
[...] There lies the problem: you're equating success with popularity. They can be correlated, to some extent, but they are certainly not the same thing. Personally, I couldn't care less about popularity. After what I've seen in the industry over the past 2-3 decades, I've become very cynical about popularity. What I *do* care for is a language with strong technical merit. D has that, to some extent -- I'm not going to pretend D is perfect either, as I do find a lot to be desired in it. But it's much better than the alternatives I've tried, so for the time being, it's my language of choice. But obviously, YMMV.
And this is the problem. Those hard core users like yourself that pretend that popularity doesn't matter. What are you going to do in 10-15 years(depending on how old you are) when Walter is dead(isn't he like 70 now?) or simply cares even less about D and moves on to dying? Popularity is what grows something. You might not care about it, but without it D is definitely dead and it is just a matter of time. So many users here think "I like D and it is good enough for me" not realizing that not catering to the masses is putting nails in the coffin. See, most of you guys think that your experiences actually matter to the rest of the world, yet you won't even begin to accept their experiences. You think if it's this or that then it is. MOST programmers are not you, you are the exception! You have an exceptional language and it will die and exceptional death. You think you are getting a great deal... D is great. But you don't realize it could be so much better. Imagine having 100k programmers using D, how much shit they would add to it. Better IDE's, better libraries, better performance, better stability, etc. Yeah, you can ignore popularity if it it's meaningless. It just shows your ignorance or your selfishness or both. Once the popularity of D = 0 D is dead. That is a fact. Do you want D dead? or do you like playing risky games? If you think D is so great then why would you not want it to be more popular? If D is better then C++ in every regard then why would you not want everyone using D instead of C++? See, your perceptions are illogical and detrimental to the very thing you claim to like. You haven't really thought it all the way through. You've got to the point "It works great for me" and have stopped there. You are not the average programmer. Also, you alone cannot make D better. It takes a village and you are scoffing at that idea like it is meaningless when it is absolute reality. All you are really doing is putting the nails in the coffin by contributing to that mentality. D has grown at a snails pace... as many new people entering in to the community, many leave. This mean's D is not really growing and without growth there is only death. The die hard fan boys scoff at the idea of doing anything that makes D commercially appealing like having a great IDE and debugger, or making error messages make sense(such as with templates that just spew out nonsense over and over requiring one to spend more than a few seconds to figure out what is going on UNLESS they have been programming in D for a few years(which means most people will give up on D pretty quick). Proper libraries that draw people in and work properly so that they do not experience problems which then causes them to exit. D will not survive another decade at the rate it is going. If you truly care about it as much as you say then you might want to take heed and at least make sure I'm not right. Of course, in a decade you will have quit using D because some better language will have come out that does everything you want over D(after all, you know there are things about D you do not like)... but someone else will fill your place and say the same nonsense like "D is great, Does everything for me, I don't care about popularity!" as if we are talking about a popularity contest then what what is really mean, which is the growth of D in to a real force in the programming world. You would think Walter, of all people, would care about such things but he seems to be like you. D is dead, at least it is on deaths door, you can stick your head in the sand and pretend it isn't, the mere fact these topics come up over and over proves it. You don't see C++ having such topics in any serious manner. It's the industrial standard. Maybe in 10 years it will start to happen, but D has had this conversation over 5 years ago. See, it is not that D itself is a bad language, it is that the whole atmosphere surrounding it, how it is managed, is the problem. Some things are done well but others poorly, eventually those things that are neglected will catch up because the community seems to care not one bit about them. The cracks are getting bigger and bigger, I'm sorry you can't see them.
 T
Apr 12 2019
next sibling parent reply bachmeier <no spam.net> writes:
On Friday, 12 April 2019 at 15:25:05 UTC, Nierjerson wrote:

 And this is the problem. Those hard core users like yourself 
 that pretend that popularity doesn't matter.
The D language is sort of like the Arch Linux community used to be (and maybe still is, but I no longer use it). New users would come in and comment "you need more GUI support", "you need to stop expecting people to compile their own software", and "your distro will never become popular with an attitude like this community". The goal of the Arch Linux project was very explicitly to provide a high quality option for users that wanted a distro following a particular philosophy. The D language offers what it offers. If anything, the complaints are that the things it offers should be of higher quality, that the project needs to scale back further. I don't think anyone is saying we should drive away users. But that is different from saying that popularity will drive all decisions and all contributions to D.
 So many users here think "I like D and it is good enough for 
 me" not realizing that not catering to the masses is putting 
 nails in the coffin.
If you have a few million to contribute to hiring a team to cater to the masses, this is a sensible argument. As things currently stand, catering to the masses will not happen, because there are no resources to do so. Sun had the money to do it, the D Language Foundation does not.
 See, it is not that D itself is a bad language, it is that the 
 whole atmosphere surrounding it, how it is managed, is the 
 problem. Some things are done well but others poorly, 
 eventually those things that are neglected will catch up 
 because the community seems to care not one bit about them. The 
 cracks are getting bigger and bigger, I'm sorry you can't see 
 them.
To the extent that this is true, we are still constrained by reality. Without resources there is no point in talking about changes that have to happen. It's easy to come up with ideas for work other should do. It's a bit harder to come up with ideas and then make them happen. My recommendation is that you move on to another language if you don't like the current state of affairs. I don't see it changing in the next decade. (Interpret that statement as you wish, but this is reality, there is no reason to pretend otherwise or talk about changes that "should" happen.) The D language works very well for me. It may not work for others. And that's okay.
Apr 12 2019
next sibling parent reply Nierjerson <Nierjerson somewhere.com> writes:
On Friday, 12 April 2019 at 15:52:17 UTC, bachmeier wrote:
 On Friday, 12 April 2019 at 15:25:05 UTC, Nierjerson wrote:

 And this is the problem. Those hard core users like yourself 
 that pretend that popularity doesn't matter.
The D language is sort of like the Arch Linux community used to be (and maybe still is, but I no longer use it). New users would come in and comment "you need more GUI support", "you need to stop expecting people to compile their own software", and "your distro will never become popular with an attitude like this community". The goal of the Arch Linux project was very explicitly to provide a high quality option for users that wanted a distro following a particular philosophy. The D language offers what it offers. If anything, the complaints are that the things it offers should be of higher quality, that the project needs to scale back further.
Um, Everything offers what it offers. It is nonsensical response because it is always true and hence says nothing about what D does. Why would anyone put in years of their life in to something just to throw it away? If D's goal was to provide a few decades of a marginal language, then it has achieved that, but I somehow doubt that was what it was written for. https://insights.stackoverflow.com/survey/2019?utm_source=so-owned&utm_medium=announcement-banner&utm_campaign=dev-survey-2019 You can see that D doesn't show up at all anywhere and also what most programmers do and expect. If one is serious about creating useful programming platform, to ignore such things is ignorant and detrimental.
 I don't think anyone is saying we should drive away users. But 
 that is different from saying that popularity will drive all 
 decisions and all contributions to D.
I never said that. I said popularity brings benefits and popularity IS required for longevity. Popularity is longevity. Popularity is a function of time AND when it reaches 0 then what the popularity represents is dead. What I'm saying is those that believe D will survive and be a useful platform and ignore all the things that drive useful platforms is being ignorant. No one knows exactly what it takes to make anything successful, but there are fundamental principles involved and when they are ignored then there is no success.
 So many users here think "I like D and it is good enough for 
 me" not realizing that not catering to the masses is putting 
 nails in the coffin.
If you have a few million to contribute to hiring a team to cater to the masses, this is a sensible argument. As things currently stand, catering to the masses will not happen, because there are no resources to do so. Sun had the money to do it, the D Language Foundation does not.
No, your argument is not sensible. Why? Because the only way to cater to the masses is to cater to them. You say there are no resources... why? Because You haven't fucking catered to the masses. What do you expect, a flip to switch and then the masses come? That is not how things work. It must be built. If the D community gave a rates ass about the bigger picture, it would have done things that would have attracted more people, then those people would then contribute more, and it would feed back in to itself. It D this to some degree but only attracted more die hard programmers who were willing to invest their time or hoped for the best. D has had 20 years to build a huge community and it has failed. It's simple as that... the reason why it has failed is because building a large community was never accepted as necessary to help D progress. With most language, or anything really, when you have 1M people using it, they will create shit for it on their own without any regard for anything. This is what humans do. D has had that. But D never had 1M, it might have had 10k at most. That means the maximum that can be achieved is from 10k, not 1M, or 10M, or 100M. So D has shot itself in the head by not making community building apart of it's plan of success. The attitude "We will not cater to the mass of moron programmers" has hurt D, possibly been the one thing that is killing it. I see many of you guys that refuse to accept the need to proper tooling that appeals to the masses. You pretend that all the new programmers that could help D thrive who are used to using GUI's and tooling of modern languages should be forced to use tooling 20+ years ago. Most new programmers who are looking for languages to latch on to are kids who have certain mentalities and ideas... and trying to force them to go back in time isn't going to attract them. There is a huge misconception in by the management and leadership of D related to this. Oh, and to pretend the masses don't matter yet here and there one of the leaders will post stats about how D is becoming more popular. So, yes they do think about it but no the increase is not significant.
 See, it is not that D itself is a bad language, it is that the 
 whole atmosphere surrounding it, how it is managed, is the 
 problem. Some things are done well but others poorly, 
 eventually those things that are neglected will catch up 
 because the community seems to care not one bit about them. 
 The cracks are getting bigger and bigger, I'm sorry you can't 
 see them.
To the extent that this is true, we are still constrained by reality. Without resources there is no point in talking about changes that have to happen. It's easy to come up with ideas for work other should do. It's a bit harder to come up with ideas and then make them happen.
AGAIN, the reason why there are no resources is BECAUSE you don't have the people BECAUSE you don't attract the people. It is not a switch!!! It is a process. You do shit to attract people, some come, then you take those people and do some more shit and more people come, and so forth. When you do the WRONG shit, you don't attract anyone AND so you MUST stop doing that. The management loves to do the wrong shit and pretend it is right. and THIS is why D will die. Because it has not built up over the 20 years the resources it could have now. It is a rocket that didn't have enough thrust to get escape velocity. At some point it will start falling. [The difference is that a rocket can't change but management can] Your logic is exactly this: "I have no money so I can't be a millionaire which will let me make more money". It's nonsensical. The only way to make money is to make money, the millions come from that process. If D focused more on building a larger community then it more people will come and the community will grow and more things will happen such as more resources(which, for programming is 99% human effort so it is PURELY humans that are required).
 My recommendation is that you move on to another language if 
 you don't like the current state of affairs. I don't see it 
 changing in the next decade. (Interpret that statement as you 
 wish, but this is reality, there is no reason to pretend 
 otherwise or talk about changes that "should" happen.)
I already have. I only use D for minor things that it works well for. I do not use it for anything serious any more. It's cut my productivity by a quarter if not more. I have over 10 languages I program in and D is my last choice for anything that involves $$$ and complexity. And guess what! It's all precisely due to the tooling. The language itself impedes me very little(there are problems here and there but it seems have become much more stable than it was when I first started using it). The D language works very well for me. It may not work for
 others. And that's okay.
Yep, exactly, and that is why you are part of the problem. This is why I stopped taking D seriously. Because it's all the people in the community are "It's about me, Id on't give a shit about you!" attitude. See, you are not the first one that has said that in this thread. I've seen it by two other people. It's people like you that are the problem. One day you will reap what you sow. You have invested years in to D, probably suck at most other languages now, and when D falls through(What happens when Walter dies? It's coming, it's not a macabre thing, it's just a fact of life) what are you going to do? Are you going to take it over and keep the train going? Do you think the rest of the guys are going to help you? How many people you got? how many will it take? What I tend to find in the D community is a lot of people with no real understanding of how project management works and the real issues projects face. They don't understand complexity nor simplicity. It's true that they understand these things better that most programmers such as most JS programmers, but most JS programmers don't have any control in any way what so ever about their language. With D, people like you get to reinforce the illogical mentalities of the management and so actually do much harm to the success of D. You can't be told other wise because you are right. You won't listen to facts, even facts that you know are true and state yourself. You always find some justification that does not prove your conclusions wrong. D as a language is great, D as a community/management is terrible. There is a huge imbalance between the two and unfortunately D won't survive the latter[Although someone might come along and reincarnate it in to something new, that can't be bet on to have any significance]. If you actually look at the D forums you will see only maybe 40 active regulars. Seriously, at MOST. Even if we make that in to 1000, or 10000, it compares NOTHING to the main language D competes against. C++ has hundreds of millions of active regulars in forums all across the web. https://stackoverflow.com/questions/tagged/d Look how dead it is! Your perception is not reality. You can pretend everything is peachy perfect but the facts show that you are blind... and you are digging your own grave(D wise). It is not pessimism to speak the truth. I want D to succeed just as much as anyone else here, but it isn't. I'm stating these things to try to wake up people like you so that maybe you will change and get with the program to try and save D, but like most things, you will choose to ignore reality until it strangles you and you are forced to realize what has happened. Even, if I'm exaggerating, even if the numbers were all off by a few orders of magnitude, they are still far too low compared to comparable languages or where D should be by now. It is people like you that are the problem. I truly don't think you get it. I think your logic is warped and you conclude the wrong things. I could be wrong and I'm not saying you are moron or that everything you conclude is wrong... but in certain things you either fail to be logical or fail to measure correctly(you over or under estimate and then never double check yourself by converse logic to see if you are even in the same ball bark as the truth). ..and, basically you have already said it, as others have, you don't really care... and that, ultimately, is the real problem. You simply do not care enough about D to criticize it enough to have it do better. If you raised kids your parenting style is "Go out and play, you can do your homework tomorrow" because you really don't care enough about your kids to do the hard work so that it pays off for you and them. I feel Walter is in that boat and many others. It's as if you guys really think it's suppose to be easy and everything is suppose to just magically come together without any blood sweat and tears. It really has nothing to do with D ultimately, it is just the thing we happen to all cross paths with. If we were in another universe it would be a similar thing but over something different. It seems to be a human thing when the human mind just ultimately gives up the war and only fights the battles to safe face or to keep the charade going on.
Apr 12 2019
parent reply silentwatcher <silentwatcher aol.com> writes:
On Friday, 12 April 2019 at 16:49:02 UTC, Nierjerson wrote:
 On Friday, 12 April 2019 at 15:52:17 UTC, bachmeier wrote:
 [...]
Um, Everything offers what it offers. It is nonsensical response because it is always true and hence says nothing about what D does. [...]
you are absolutely wright. i wished i could express this a good as you do, but english is not my native language. but aren't all you guys stunned how Andrei and Walter come to rescue of there creation and failed management? what a yelling silence. well this is the usual way - stand by and/or don't care. the idiots will calm down after they are made trolls or are told to move on. should we?
Apr 12 2019
parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Friday, 12 April 2019 at 18:00:32 UTC, silentwatcher wrote:
 but aren't all you guys stunned how Andrei and Walter come to 
 rescue of there creation and failed management?
 what a yelling silence.
I'm having a hard time spring that sentence, but I hoping that the dconf AGM will set a new direction / management policy.
 well this is the usual way - stand by and/or don't care. the 
 idiots will calm down after they are made trolls or are told to 
 move on.
 should we?
If and only if you are a troll, I'm jet lagged and can't tell.
Apr 12 2019
parent silentwatcher <silentwatcher aol.com> writes:
On Friday, 12 April 2019 at 18:26:26 UTC, Nicholas Wilson wrote:
 On Friday, 12 April 2019 at 18:00:32 UTC, silentwatcher wrote:
 but aren't all you guys stunned how Andrei and Walter come to 
 rescue of there creation and failed management?
 what a yelling silence.
I'm having a hard time spring that sentence, but I hoping that the dconf AGM will set a new direction / management policy.
 well this is the usual way - stand by and/or don't care. the 
 idiots will calm down after they are made trolls or are told 
 to move on.
 should we?
If and only if you are a troll, I'm jet lagged and can't tell.
no, not a troll. there was a time i used d regularly and even tried our company to use it (2011), but thanks haven that failed. what is the opinion of Andrei and Walter? it's kind of funny that they don't have one.
Apr 12 2019
prev sibling parent silentwatcher <silentwatcher aol.com> writes:
On Friday, 12 April 2019 at 15:52:17 UTC, bachmeier wrote:
 On Friday, 12 April 2019 at 15:25:05 UTC, Nierjerson wrote:
 My recommendation is that you move on to another language if 
 you don't like the current state of affairs. I don't see it 
 changing in the next decade. (Interpret that statement as you 
 wish, but this is reality, there is no reason to pretend 
 otherwise or talk about changes that "should" happen.)
no, i am not a troll! but this is the kind of group treatment that makes you guys famous. it works for you hobbyists, so who are other idiots.
 The D language works very well for me. It may not work for 
 others. And that's okay.
for you privately it works well - ok. does it have a chance for companies? no
Apr 12 2019
prev sibling next sibling parent reply Timon Gehr <timon.gehr gmx.ch> writes:
On 12.04.19 17:25, Nierjerson wrote:
 
 Yeah, you can ignore popularity if it it's meaningless.
That seems obvious.
 It just shows your ignorance or your selfishness or both.
 ...
Right, because supporting an open source language and toolchain is so selfish and ignorant. I won't try to force you to use it for your own good. If that's selfish, so be it.
 Once the popularity of D = 0 D is dead. That is a fact.
As long as I am using it, the popularity of D ≠ 0. Fact. (In fact, D has plenty of users.)
 If you think D is so great 
It's fine, not great, but better than would-be competitors for my current use cases.
 then why would you not want it to be more popular?
When everything else is the same, having more users is a liability. In any case, if you want to invest time and effort into a marketing campaign, be my guest. I'm not actively opposed to popularity, even though it would probably further diminish the average quality of discourse on the forums.
 If D is better then C++ in every regard
(That's not even close to what anyone in this thread claimed.)
 then why would you not want everyone using D instead 
 of C++?
 ...
Competitive advantage.
 See, your perceptions are illogical and detrimental to the very thing 
 you claim to like.
D is a tool. You are arguing as if it was a person whom I wish to marry.
Apr 12 2019
parent reply Nierjerson <Nierjerson somewhere.com> writes:
On Friday, 12 April 2019 at 16:42:46 UTC, Timon Gehr wrote:
 On 12.04.19 17:25, Nierjerson wrote:
 
 Yeah, you can ignore popularity if it it's meaningless.
That seems obvious.
 It just shows your ignorance or your selfishness or both.
 ...
Right, because supporting an open source language and toolchain is so selfish and ignorant. I won't try to force you to use it for your own good. If that's selfish, so be it.
Um, I didn't say that. I said that if you only support the language features that you use then it is selfishness. There is a difference, you are trying to warp what I said to suit your beliefs. What I'm saying is that there are a lot of D users that use D for X... and people that use it for Y and have Y-issues are irrelevant for these people. For them, because D does X well they are happy, and they careless about the other users. That is selfishness.
 Once the popularity of D = 0 D is dead. That is a fact.
As long as I am using it, the popularity of D ≠ 0. Fact. (In fact, D has plenty of users.)
And you fail to realize it doesn't have to be 0 to be practically dead. It's a theoretical statement and all theoretical statements constrain reality. I mean, are you going to make me spell out every little detail just to prove you wrong? Do we have to figure out exactly how many users D requires to not end up dead?
 If you think D is so great
It's fine, not great, but better than would-be competitors for my current use cases.
My point above. For YOU. You care less about other users and their use cases. D is fine for you, so why do you want to keep it bad for others rather than help it work for them too? That is very selfish.
 then why would you not want it to be more popular?
When everything else is the same, having more users is a liability.
True, but one can make such blanket statements about everything. It's nonsensical in practice because nothing can ever be the same. The amount of manhours that are invested in D is proportional to the "popularity". By forcing everything else the same you remove that condition and so it then becomes pointless. This isn't a business selling things where the more customers are more liability because one can just raise the prices of their product to decrease the customers but maintain the same revenue. There isn't a trade off here with D's community. The larger the community the more investment those people put in to D and that helps D as a language and compiler grow and that helps everyone that uses it and draws in more people who invest more time. These people invest their time willingly, they don't have to pay anything else for it. There is a huge difference.
 In any case, if you want to invest time and effort into a 
 marketing campaign, be my guest. I'm not actively opposed to 
 popularity, even though it would probably further diminish the 
 average quality of discourse on the forums.
Popularity automatically does not cause problems. It is the state of the human race that causes the problems. If the logic is "We don't want D popular because it will cause problems in the forums" then D is shooting itself in the head. There are ways to alleviate such problems so one doesn't have to sacrifice one for the other. The logic then should be "Ok, we need to build a larger community for D, we know it that this will generally create a problem A. How can we minimize the effects of A"? This is basic calculus. Even computer scientists deal with min/max type of problems. You don't throw the baby out with the bath water, you find a balanced solution that gives the results one wants. Meaning one finds appropriate solutions for the appropriate problems.
 If D is better then C++ in every regard
(That's not even close to what anyone in this thread claimed.)
That is why I said "IF" it was a hypothetical.
 then why would you not want everyone using D instead of C++?
 ...
Competitive advantage.
 See, your perceptions are illogical and detrimental to the 
 very thing you claim to like.
D is a tool. You are arguing as if it was a person whom I wish to marry.
lol, I do not think I was posting to you specifically. In some ways it is someone you wish to marry, or you already have. How many years have you invested with D? Seriously, when you are on your death bed those years might mean something. Your time should be important too you and so wasting it on things you don't take seriously will only harm you. It is your choice to live your life that way but, for example, you shouldn't marry the first broad that you see because that is years of your life that are "wasted"(in the sense that if you could spend them better). Most people though just accept whatever and they end up paying for you. You can't get the time back so why not make sure it is invested well?
Apr 12 2019
parent Timon Gehr <timon.gehr gmx.ch> writes:
On 12.04.19 20:13, Nierjerson wrote:
 ... I said that if you only support the language 
 features that you use then it is selfishness. [...]
 
And I have in fact added some compiler features that I'll most likely never use myself. But I won't go ahead and sink >1k hours into a spare time project (e.g. IDE) that I don't primarily care for. If that's selfish, then everyone is selfish. If everyone works on something that is missing and they care about enough, then everything that someone cares about enough will eventually get worked on. Having people who don't care about certain things work on them while they have other things to do is just bad resource allocation. Furthermore, you need to have a strange notion of "selfishness" to think that sharing your work is selfish just because you happened to work on something that benefits yourself in addition to others.
 ...
 It's fine, not great, but better than would-be competitors for my 
 current use cases.
My point above. For YOU. You care less about other users and their use cases. D is fine for you, so why do you want to keep it bad for others
That's a loaded question, and it is bullshit.
 rather than help it work for them too? That is very selfish.
 ...
And demanding that others work on your problems for free is not?
 
 then why would you not want it to be more popular?
When everything else is the same, having more users is a liability.
True, but one can make such blanket statements about everything. It's nonsensical in practice because nothing can ever be the same. The amount of manhours that are invested in D is proportional to the "popularity". By forcing everything else the same you remove that condition and so it then becomes pointless. This isn't a business selling things
You mean like, demanding money to compensate for invested time and resources spent on someone else's problems? How selfish.
 ... There isn't a 
 trade off here with D's community.
Well, clearly you are trying to tell someone to do something differently. It's unlikely to have no cost. (Otherwise you could just do it yourself instead of wasting time writing long forum posts, hoping that other people will do as you say.)
 The larger the community the more 
 investment those people put in to D and that helps D as a language and 
 compiler grow and that helps everyone that uses it and draws in more 
 people who invest more time.
 ...
There can also be more users without there being more people working on open-source projects. It seems that the people who complain about D in the forums in the fashion you are doing are rarely active contributors.
 
 In any case, if you want to invest time and effort into a marketing 
 campaign, be my guest. I'm not actively opposed to popularity, even 
 though it would probably further diminish the average quality of 
 discourse on the forums.
Popularity automatically does not cause problems. It is the state of the human race that causes the problems. If the logic is "We don't want D popular because it will cause problems in the forums" then D is shooting itself in the head.
That is literally the opposite of the statement I made, but fine.
 There are ways to alleviate such problems so one 
 doesn't have to sacrifice one for the other.
 ...
Even if so, you will sacrifice some third thing.
Apr 12 2019
prev sibling parent reply "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Fri, Apr 12, 2019 at 03:25:05PM +0000, Nierjerson via Digitalmars-d wrote:
 On Friday, 12 April 2019 at 14:30:53 UTC, H. S. Teoh wrote:
[...]
 Personally, I couldn't care less about popularity. After what I've
 seen in the industry over the past 2-3 decades, I've become very
 cynical about popularity.  What I *do* care for is a language with
 strong technical merit. D has that, to some extent -- I'm not going
 to pretend D is perfect either, as I do find a lot to be desired in
 it.  But it's much better than the alternatives I've tried, so for
 the time being, it's my language of choice.
 
 But obviously, YMMV.
 
And this is the problem. Those hard core users like yourself that pretend that popularity doesn't matter. What are you going to do in 10-15 years(depending on how old you are) when Walter is dead(isn't he like 70 now?) or simply cares even less about D and moves on to dying?
There are enough of us around to keep it going without Walter, and that number is growing. It may not be growing as fast as you might want, but it's growing.
 Popularity is what grows something.  You might not care about it, but
 without it D is definitely dead and it is just a matter of time.
Bold statement for a language that has a good number of companies using it in production, with a small group of dedicated contributors. Yeah, it may be no C++ megalith, but honestly? I can live with that. In fact, I like it. Popularity usually also equates to lowering your standards to the lowest common denominator. I've seen enough of that in my career to be extremely cynical about it. [...]
 Once the popularity of D = 0 D is dead. That is a fact. Do you want D
 dead?  or do you like playing risky games? If you think D is so great
 then why would you not want it to be more popular? If D is better then
 C++ in every regard then why would you not want everyone using D
 instead of C++?
[...] Ah, the good old strawman argument. I never said I don't *want* D to be popular. I said that popularity is irrelevant *to me*. I want D to grow *by technical merit*, not than by pandering to whatever fashion trend the masses are clamoring for today that will inevitably change again tomorrow. Popularity is not a reliable measure of technical merit.
 See, it is not that D itself is a bad language, it is that the whole
 atmosphere surrounding it, how it is managed, is the problem. Some
 things are done well but others poorly, eventually those things that
 are neglected will catch up because the community seems to care not
 one bit about them.  The cracks are getting bigger and bigger, I'm
 sorry you can't see them.
[...] To be honest, I've seriously thought about forking D on several occasions. I haven't gone through with it yet, for many reasons. But if push comes to shove, I'm ready to take it on, and I'm pretty certain that I'm not alone. T -- People say I'm arrogant, and I'm proud of it.
Apr 12 2019
next sibling parent Nierjerson <Nierjerson somewhere.com> writes:
On Friday, 12 April 2019 at 16:45:04 UTC, H. S. Teoh wrote:
 On Fri, Apr 12, 2019 at 03:25:05PM +0000, Nierjerson via 
 Digitalmars-d wrote:
 On Friday, 12 April 2019 at 14:30:53 UTC, H. S. Teoh wrote:
[...]
 Personally, I couldn't care less about popularity. After 
 what I've seen in the industry over the past 2-3 decades, 
 I've become very cynical about popularity.  What I *do* care 
 for is a language with strong technical merit. D has that, 
 to some extent -- I'm not going to pretend D is perfect 
 either, as I do find a lot to be desired in it.  But it's 
 much better than the alternatives I've tried, so for the 
 time being, it's my language of choice.
 
 But obviously, YMMV.
 
And this is the problem. Those hard core users like yourself that pretend that popularity doesn't matter. What are you going to do in 10-15 years(depending on how old you are) when Walter is dead(isn't he like 70 now?) or simply cares even less about D and moves on to dying?
There are enough of us around to keep it going without Walter, and that number is growing. It may not be growing as fast as you might want, but it's growing.
Even one man can "keep it going" in theory. In practice that is now how it works. When the "team leader" goes everything almost always falls apart. In war, if the commander gets killed there are specific processes to deal with the inevitable outcome of the company being obliterated. This is why their are chains of command and shut. You won't be able to keep anything together in any significant way without some organized structure. It is pipe dream because EVEN if it were true, it is only true in theory or in some astronomical chance. In reality, that is, when we want to actually not take huge risks, things work a certain way. It has nothing to do with D specifically, it is true in general for all things. It is not that the outcome is always known but that why go down that path? It doesn't have to go that way and it will only be a tough road. There is no point except to be lazy and ignorant. Proper planning is what has proven itself time and again in all complex things. No need to throw it out the window just because you guys want to gamble.
 Popularity is what grows something.  You might not care about 
 it, but without it D is definitely dead and it is just a 
 matter of time.
Bold statement for a language that has a good number of companies using it in production, with a small group of dedicated contributors. Yeah, it may be no C++ megalith, but honestly? I can live with that. In fact, I like it. Popularity usually also equates to lowering your standards to the lowest common denominator. I've seen enough of that in my career to be extremely cynical about it.
Seriously? You do realize that the companies that use D are a drop in the bucket compared to most other popular languages? Also, most of these companies would drop D in a heart beat if something better came along to make them more money. Look, this is what you are saying: "Too much `popularity` is bad because of X, I've seen it in the past so we won't have any popularity". That makes no sense. How bout you find a better way to do it? I agree that popularity in and of itself is not necessarily good, but the right popularity is the best. What if D had a community of 1M programmers that were identical to you? Would you not accept it because it's too popular? Or would you all start making D the most amazing language and compiler that you can conceive of? You are throwing out the baby with the bath water. There has to be a balance in everything. To choose an extreme is idiotic all virtually all cases no matter hat the extreme is. Choosing one extreme over some other is just as bad as choosing another extreme over some other extreme. [i.e., saying "My extreme is better than yours" is a destructive statement unless it can be proved mathematically to be true or beyond all meaningful doubt]
 [...]
 Once the popularity of D = 0 D is dead. That is a fact. Do you 
 want D dead?  or do you like playing risky games? If you think 
 D is so great then why would you not want it to be more 
 popular? If D is better then C++ in every regard then why 
 would you not want everyone using D instead of C++?
[...] Ah, the good old strawman argument. I never said I don't *want* D to be popular. I said that popularity is irrelevant *to me*. I want D to grow *by technical merit*, not than by pandering to whatever fashion trend the masses are clamoring for today that will inevitably change again tomorrow. Popularity is not a reliable measure of technical merit.
It is not a straw man. It is fact. I didn't say you wanted it, you might not verbalize that or even believe that is what you want, but actions are what counts. If your actions causally lead to a specific outcome(and all things are cause and effect) then you wanted it whether you realize it or not. For example, if a girl has sex with a boy not realizing that she will get pregnant and it will potentially ruin her life, she has set up a domino effect and the outcome, while not 100% is statistically determinable... and if she ignores that she will become a statistic. Do you agree with me that if no one uses D in any way shape or form, by I which I mean popularity(t) = 0 for all t > T, then D is what we could say is "dead"? If so then D's popularity is related to it's heath. You can't argue that and if your logic does not in some way conform to the constraint above, you will almost surely be hurting D than helping it. My point IS NOT that D should just base everything on popularity. That is not what I'm arguing at all. What I am arguing is that without some focus on it D is doing far more damage than good and eventually it will catch up with it. I'm also not saying that D has 0 focus on "popularity", I'm simply saying that there is a very significant likelihood that D's lack of focus on building community is significantly hurting it's growth(growth in it's capabilities that all D users can benefit from, including you).
 See, it is not that D itself is a bad language, it is that the 
 whole atmosphere surrounding it, how it is managed, is the 
 problem. Some things are done well but others poorly, 
 eventually those things that are neglected will catch up 
 because the community seems to care not one bit about them.  
 The cracks are getting bigger and bigger, I'm sorry you can't 
 see them.
[...] To be honest, I've seriously thought about forking D on several occasions. I haven't gone through with it yet, for many reasons. But if push comes to shove, I'm ready to take it on, and I'm pretty certain that I'm not alone.
And that alone proves there is something fundamentally wrong with D's community. Why would you ever even think about that if the community was properly functioning? I have not only thought about forking D but writing my own compiler. The problem is I know I'm not willing to put in the effort to make it successful because it is just too much work for me(and I'm real with myself about it). I've had many long years been wanting a compiler that I works the way I believe compilers should, take all the short comings of all the languages I have learned and with all the things I have learned and try to make something better. But it is a long process because I would go in to uncharted territory. I don't believe in having to follow the status quo and I'd solely write the compiler for myself. It would be a 10-20 year project, an investment I am not willing to make. Imagine this: Take any aspect of D, be it an audio library, an IDE, debugging, whatever... imagine it was as far ahead of what else is out there in the same way it is ahead with it's meta programming. This is how D should be as a goal. Rather than "Our meta programming is light years head of everything else but everything else we do is light years beyond anything else". I realize it is a pipe dream, but without dreaming reality never changes. It's as If D one a trophy for it's meta programming and said "We won! Time to go home!" and stopped competing in everything else. I really believe the leadership believes there are only a few aspects of D that matters like it's meta programming or it's stability and that everything else is irrelevant. I think they believe this precisely in the same way that you and others believe in D: "It works for me"... so, audio people are ignored because the leadership doesn't do audio, so it's irrelevant do them. Graphics are ignored because the leaders only use and write programs and code in text. These things then only get any support from individuals that say "Man, I love D but I need X" and so create X themselves. This approach then creates a huge mess for many reasons(maintenance, integrability, cohesiveness, etc). I'm not trying to pain the picture that D sucks all around, just that D could do a lot better in it's weakest areas instead of essentially ignoring them. Remember, something is only as strong as it's weakest link. It is tautological. It can't be argued. It means that if D wants to be strong it should work on it's weak points and not sweep them under the rug.
Apr 12 2019
prev sibling parent reply Mike Franklin <slavo5150 yahoo.com> writes:
On Friday, 12 April 2019 at 16:45:04 UTC, H. S. Teoh wrote:

 To be honest, I've seriously thought about forking D on several 
 occasions.  I haven't gone through with it yet, for many 
 reasons.  But if push comes to shove, I'm ready to take it on, 
 and I'm pretty certain that I'm not alone.
Yes, you're not alone. Mike
Apr 13 2019
next sibling parent reply silentwatcher <silentwatcher aol.com> writes:
On Saturday, 13 April 2019 at 14:19:51 UTC, Mike Franklin wrote:
 On Friday, 12 April 2019 at 16:45:04 UTC, H. S. Teoh wrote:

 To be honest, I've seriously thought about forking D on 
 several occasions.  I haven't gone through with it yet, for 
 many reasons.  But if push comes to shove, I'm ready to take 
 it on, and I'm pretty certain that I'm not alone.
Yes, you're not alone. Mike
are there more people who would like to fork?
Apr 13 2019
parent silentwatcher <silentwatcher aol.com> writes:
On Saturday, 13 April 2019 at 14:40:10 UTC, silentwatcher wrote:
 On Saturday, 13 April 2019 at 14:19:51 UTC, Mike Franklin wrote:
 On Friday, 12 April 2019 at 16:45:04 UTC, H. S. Teoh wrote:

 To be honest, I've seriously thought about forking D on 
 several occasions.  I haven't gone through with it yet, for 
 many reasons.  But if push comes to shove, I'm ready to take 
 it on, and I'm pretty certain that I'm not alone.
Yes, you're not alone. Mike
are there more people who would like to fork?
there is already http://www.volt-lang.org wouldn't that be something to wander to?
Apr 13 2019
prev sibling next sibling parent reply Suleyman <sahmi.soulaimane gmail.com> writes:
On Saturday, 13 April 2019 at 14:19:51 UTC, Mike Franklin wrote:
 On Friday, 12 April 2019 at 16:45:04 UTC, H. S. Teoh wrote:

 To be honest, I've seriously thought about forking D on 
 several occasions.  I haven't gone through with it yet, for 
 many reasons.  But if push comes to shove, I'm ready to take 
 it on, and I'm pretty certain that I'm not alone.
Yes, you're not alone. Mike
Instead of making a fork which is equivalent to making a coup d'état why not try the election first Andrei said they need managers I would contribute to that if I could do any good.
Apr 13 2019
next sibling parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Saturday, 13 April 2019 at 17:03:23 UTC, Suleyman wrote:
 On Saturday, 13 April 2019 at 14:19:51 UTC, Mike Franklin wrote:
 On Friday, 12 April 2019 at 16:45:04 UTC, H. S. Teoh wrote:

 To be honest, I've seriously thought about forking D on 
 several occasions.  I haven't gone through with it yet, for 
 many reasons.  But if push comes to shove, I'm ready to take 
 it on, and I'm pretty certain that I'm not alone.
Yes, you're not alone. Mike
Instead of making a fork which is equivalent to making a coup d'état why not try the election first
*cough* AGM *cough*
 Andrei said they need managers I would contribute to that if I 
 could do any good.
Awesome.
Apr 13 2019
parent Suleyman <sahmi.soulaimane gmail.com> writes:
On Saturday, 13 April 2019 at 19:32:55 UTC, Nicholas Wilson wrote:
 Awesome.
I didn't mean myself there I'm not a senior in anything but I'm sure we have enough seniors that good do the job maybe yourself.
Apr 13 2019
prev sibling parent reply Mike Franklin <slavo5150 yahoo.com> writes:
On Saturday, 13 April 2019 at 17:03:23 UTC, Suleyman wrote:

 Instead of making a fork which is equivalent to making a coup 
 d'état why not try the election first Andrei said they need 
 managers I would contribute to that if I could do any good.
What election? D is now embracing democracy? I might go for a republic. Anyway, forking does not mean the end of D any more than than having children means the end of their parents. It's not a coup; it's natural evolution. Lately, I've been contributing to D every day, as have a *very* few others. But Walter, Andrei, and I seldom see eye to eye about what's important. They've told me on more than one occasion that what I'm doing and what I want for D is not important (e.g. https://forum.dlang.org/post/pffvdn$v2$1 digitalmars.com). I know of a couple others who have left the D scene over that. In fact, I find that D has a major turnover problem largely stemming from that. I've asked Walter and Andrei for their priorities so I could find something to work on that both I and they want. They only gave me a few items (I wish they would have given me more), but I didn't find any of them all that important compared to other things I had on my list. Lately, I find the things that Walter is doing in DMD to be a very low priority compared to all of the bugs in bugzilla for which only he is qualified to fix. I wish he'd stop refactoring code and start fixing bugs, but, maybe his refactorings of late are laying some groundwork for more important stuff. I don't know. His work to convert the DMD backend to D last year was *most* welcome. I almost never see Andrei doing much visible work. Maybe he's too busy doing other things that I don't realize need done, or doing work through others, like his students. I don't know. I don't see what goes on behind the scenes, but from my perspective the majority of good work on D is done by handful of passionate volunteers who hold no real position in D. Some transparency about what's going on, and where things are heading might go a long way. If I see common ground, I'm in. Andrei got me fired up about std.v2, "worrying too much about changing things", and "druntime must go...[we need an] opt-in continuum". That's exactly what I've been trying to do in D for the past 5 years (understand I had to learn before I could actually do anything). Finally, common ground. I'm in, and I'm going to try to make that a reality. However, if that does not materialize, I see too much adversity to change, I see things going in the wrong direction, or I face unnecessary obstruction, I'm not going to complain, lobby, etc; I'm going to go back to planning my alternative. With regard to what motivates me to volunteer time and effort to a project, I have much in common with Howard Roark. Mike
Apr 13 2019
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/13/2019 2:35 PM, Mike Franklin wrote:
 Lately, I find the things that Walter is doing in DMD to be a very low
priority 
 compared to all of the bugs in bugzilla for which only he is qualified to fix.
 
 I wish he'd stop refactoring code and start fixing bugs, but, maybe his 
 refactorings of late are laying some groundwork for more important stuff.
I gave a list a couple times on technical debt in DMD, and nobody picked up the flag. So I've been doing it. If this is let go for too long, the code becomes unmaintainable.
Apr 13 2019
next sibling parent reply silentwatcher <silentwatcher aol.com> writes:
On Sunday, 14 April 2019 at 04:48:00 UTC, Walter Bright wrote:

i think there are some other things you don't understand yet.
go back in this thread and read what people think about D and why 
they think it should be forked.
you guys made lab experiment of it instead of finding out what 
the real world programming needs. why are people dissatisfied?
stop finding all those mediocre things/solutions like help here 
or do that. i admire the gdc project but i would not use it.
my experience is, that programmers (at work) look at D and are 
afraid of using it. to large, to many features that are nice but 
nobody needs, web like syntax, the GC and after reading in the 
forum, they are even more afraid to use an unstructured 
experiment.
then there no tools, libraries etc., just visuald and that is the 
only reason why some try D for a short time.
well now will tell us again - write the tools/libraries, but in a 
business you don't have the time to do that. all those things 

into D?
no time to experiment.
i like D, followed it for a long, long time, but it turned into a 
moloch. some of us still use D1 for little tasks. i hope somebody 
takes D1, strips the gc, adds templates, cleans up this mess and 
forgets about the rest of the bloat.
Apr 13 2019
next sibling parent reply Andre Pany <andre s-e-a-p.de> writes:
On Sunday, 14 April 2019 at 05:35:41 UTC, silentwatcher wrote:
 On Sunday, 14 April 2019 at 04:48:00 UTC, Walter Bright wrote:

 i think there are some other things you don't understand yet.
 go back in this thread and read what people think about D and 
 why they think it should be forked.
 you guys made lab experiment of it instead of finding out what 
 the real world programming needs. why are people dissatisfied?
 stop finding all those mediocre things/solutions like help here 
 or do that. i admire the gdc project but i would not use it.
 my experience is, that programmers (at work) look at D and are 
 afraid of using it. to large, to many features that are nice 
 but nobody needs, web like syntax, the GC and after reading in 
 the forum, they are even more afraid to use an unstructured 
 experiment.
 then there no tools, libraries etc., just visuald and that is 
 the only reason why some try D for a short time.
 well now will tell us again - write the tools/libraries, but in 
 a business you don't have the time to do that. all those things 

 into D?
 no time to experiment.
 i like D, followed it for a long, long time, but it turned into 
 a moloch. some of us still use D1 for little tasks. i hope 
 somebody takes D1, strips the gc, adds templates, cleans up 
 this mess and forgets about the rest of the bloat.
I am working in the "business" 9 to 5 and I can say 90% of what you write is just wrong. It seems you had a look 5 years ago at D and all the improvements and community effort since then you haven't noticed. The D Language is used at companies and the tooling, libraries have greatly improved. I enjoy every day I can write D coding at work because it works so much better than other languages. Please take the time to validate what you say. Kind regards Andre
Apr 14 2019
next sibling parent silentwatcher <silentwatcher aol.com> writes:
On Sunday, 14 April 2019 at 08:00:16 UTC, Andre Pany wrote:
 On Sunday, 14 April 2019 at 05:35:41 UTC, silentwatcher wrote:
 [...]
I am working in the "business" 9 to 5 and I can say 90% of what you write is just wrong. It seems you had a look 5 years ago at D and all the improvements and community effort since then you haven't noticed. The D Language is used at companies and the tooling, libraries have greatly improved. I enjoy every day I can write D coding at work because it works so much better than other languages. Please take the time to validate what you say. Kind regards Andre
in your setting it might be wrong - not in mine. i love disciples - but maybe you are right, i will shut up and hope something will change. good luck in your endeavors.
Apr 14 2019
prev sibling parent silentwatcher <silentwatcher aol.com> writes:
On Sunday, 14 April 2019 at 08:00:16 UTC, Andre Pany wrote:
 On Sunday, 14 April 2019 at 05:35:41 UTC, silentwatcher wrote:
 [...]
I am working in the "business" 9 to 5 and I can say 90% of what you write is just wrong. It seems you had a look 5 years ago at D and all the improvements and community effort since then you haven't noticed. The D Language is used at companies and the tooling, libraries have greatly improved. I enjoy every day I can write D coding at work because it works so much better than other languages. Please take the time to validate what you say. Kind regards Andre
in your setting it might be my observations could be wrong - not in mine. i love disciples/evangelists - but maybe you are right, i will shut up and hope something will change. good luck in your endeavors.
Apr 14 2019
prev sibling parent reply Laeeth Isharc <laeeth kaleidic.io> writes:
On Sunday, 14 April 2019 at 05:35:41 UTC, silentwatcher wrote:
 On Sunday, 14 April 2019 at 04:48:00 UTC, Walter Bright wrote:

 i think there are some other things you don't understand yet.
 go back in this thread and read what people think about D and 
 why they think it should be forked.
 you guys made lab experiment of it instead of finding out what 
 the real world programming needs. why are people dissatisfied?
 stop finding all those mediocre things/solutions like help here 
 or do that. i admire the gdc project but i would not use it.
 my experience is, that programmers (at work) look at D and are 
 afraid of using it. to large, to many features that are nice 
 but nobody needs, web like syntax, the GC and after reading in 
 the forum, they are even more afraid to use an unstructured 
 experiment.
 then there no tools, libraries etc., just visuald and that is 
 the only reason why some try D for a short time.
 well now will tell us again - write the tools/libraries, but in 
 a business you don't have the time to do that. all those things 

 into D?
 no time to experiment.
 i like D, followed it for a long, long time, but it turned into 
 a moloch. some of us still use D1 for little tasks. i hope 
 somebody takes D1, strips the gc, adds templates, cleans up 
 this mess and forgets about the rest of the bloat.
Maintenance constitutes the largest part of the total cost of ownership of code. In other words when the code is 'finished' then you have made only a down-payment. If you don't want to invest your own time into working with D, then I don't think you should. I wouldn't dream of trying to change your mind. But there's clearly some ambivalence there because why else would you be posting. The most important aspects of D might be the values and good taste. When I decided to learn D, there was nothing calculating about it - I just wanted to find a language I could stand to program in because otherwise I wouldn't be doing much programming as life is too short and it's not my only interest. One thing led to another and working from my home office led to consulting and then being in charge of technology and part of research for a 150 odd person firm. I don't know, and it's a longer story but probably that wouldn't have happened if I hadn't been drawn to D. Turns out also that the values that characterise the language and the community are peculiarly suitable for the commercial context of what's still an early stage firm that has grown very quickly. It's true that there's a high barrier to entry in the beginning with D - much better now, but if you are put off by discomfort and needing to figure things out for yourself then it's going to be quite a tough experience. D doesn't place a high value on being accessible and if that's what is important then maybe somewhere else would be a better fit. On the other hand it's also a moat that constitutes a filter - as it happens commercially people who are okay with being uncomfortable, with having to figure stuff out, are quite a good fit for our business, especially at the stage we are at. It's a really very big world, not like it was when I started to learn to program in 1983. Most software is developed by private organisations that don't talk much about what they are doing. I never thought that D would be considered a substitute for Ada and Pascal but that's been the case in one quite interesting commercial application for ship design. Similarly for us D - and a little functional domain specific language written in D - has been a replacement for Excel spreadsheets and SQL reports. Brutal upfront sometimes, but the upfront emotional experience is the least important part of the cost of developing and maintaining software. The productivity experience has a different profile too - you spend time at different points on different things, but looking at our own experience from a commercially perspective I really don't think it would have been possible to be as productive taking a different route. There are quite a lot of libraries now - 1500 last I checked on code.dlang.org Calling python libraries is easy and calling C libraries using DPP is also easy. DPP keeps improving and in time it will handle much more of C++ headers. Yes - the tolerance for experimentation is an important question. In firms where there isn't much of a tolerance for experimenting and for some of those experiments to fail then it's probably not the right environment to use D. But I think the more interesting places to work are quite different.
Apr 14 2019
next sibling parent Guillaume Piolat <first.last gmail.com> writes:
On Sunday, 14 April 2019 at 09:42:01 UTC, Laeeth Isharc wrote:
 Brutal upfront sometimes, but the upfront emotional experience 
 is the least important part of the cost of developing and 
 maintaining software.
100% agree. That's exactly my experience, the upfront payment of creating D software was sometimes brutal the first year - even for a seasoned D programmer - and afterwards it yielded dividends in lower Cost Of Ownership quite evidently. And a lot of it is thanks to DUB/SemVer I must say, without it I wouldn't even dare maintaining that much projects else, and another big part is thanks to the community that comes with a particular culture. It really changes your perspective over time. It's very important to keep the complexity down (not only code) in an organization and D is an integral part of this **because it scales from disposable code to production code**. My _solo_ organization has 62 projects in 4 years, all in D (dub.json): - 2 are open-source to eventually keep costs down, if other companies have similar views eventually, - about 20 of which have to be maintained privately with (Cost of Ownership), - 27 are only maintained lazily when needed, they are absolutely needed for experimentation - about 15 were thrown away and won't ever have to be maintained If the rate of maintained-LOC _production_ was higher than that(it's hard not to produce code), it would lead to a worse outcome in the exponential curve of software size. The future of D is perhaps more shared costs between D users, hiring reputed library designers, with a shared understanding that value must flow back to the D Foundation. Only this can solve software size.
Apr 14 2019
prev sibling next sibling parent reply Chris <wendlec tcd.ie> writes:
On Sunday, 14 April 2019 at 09:42:01 UTC, Laeeth Isharc wrote:
[...]

 Yes - the tolerance for experimentation is an important 
 question.
  In firms where there isn't much of a tolerance for 
 experimenting and for some of those experiments to fail then 
 it's probably not the right environment to use D.  But I think 
 the more interesting places to work are quite different.
That's all good and well and I sincerely congratulate you on your success. But what I see is the following divide: those who say that D works for their business usually use it for very specific purposes with a custom made ecosystem they've built up over the years (as I did too) maybe bound to a particular version of dmd or D1, and it's often for in-house purposes, e.g. analyzing the stock market or optimizing internet ads or machine learning. D is of course a good tool for that kinda stuff (as is Lisp or Scala). But once you have to step out of your biotope things get hairy. Once customers depend on your software directly (as in: installing it directly on a machine, interfacing with it via plug ins or accessing an API on your web server), you're out in the wild with D as far as tooling and stability (breaking changes) are concerned. In other words, D is good for fenced off software that is built for very specific purposes. When it comes to "general purpose", however, it's a different story all together. This is what I'm trying to convey. D was a personal success for you, good, but I'm sure in a few years people will tell similar stories about Crystal, Nim and whatnot. When you started using D it had the edge over other languages in some respects, but other languages have caught up and offer ease of use on top of that. This is what doesn't register with the D community. Some users live happily in their respective self-made D biotopes, while others want more, a broader focus (and they mean well as they want D to be suceessful in the world not just in niches). These are the two factions, and it's the biotope faction that dominates the Foundation and the forum, indeed the "biotopeism" in the community is so far advanced that people have stared to fork D, the ultimate stage of "Ok, I'll do my own thing.", which is of course only a logical consequence of the insular mentality that permeates D culture. You encourage people to do it themselves, they will finally fork. As there is no way the two factions can communicate with each other, there is only one logical consequence. The faction with the broader focus (like myself) wanders off and what remains are the die hard users who are happy in their biotope, so D will remain a niche language and, of course, there's the danger that some people will break off, fork D and add to the general chaos (and you may read questions like this on Stackoverflow: "Which D should I use? There are N implementations. Dragon, Volt, BetterD, CleanD, SaneD...").
Apr 14 2019
next sibling parent reply Andre Pany <andre s-e-a-p.de> writes:
On Sunday, 14 April 2019 at 12:34:12 UTC, Chris wrote:
 On Sunday, 14 April 2019 at 09:42:01 UTC, Laeeth Isharc wrote:
 [...]

 [...]
That's all good and well and I sincerely congratulate you on your success. But what I see is the following divide: those who say that D works for their business usually use it for very specific purposes with a custom made ecosystem they've built up over the years (as I did too) maybe bound to a particular version of dmd or D1, and it's often for in-house purposes, e.g. analyzing the stock market or optimizing internet ads or machine learning. D is of course a good tool for that kinda stuff (as is Lisp or Scala). But once you have to step out of your biotope things get hairy. Once customers depend on your software directly (as in: installing it directly on a machine, interfacing with it via plug ins or accessing an API on your web server), you're out in the wild with D as far as tooling and stability (breaking changes) are concerned. In other words, D is good for fenced off software that is built for very specific purposes. When it comes to "general purpose", however, it's a different story all together. This is what I'm trying to convey. [...]
While I would agree with your arguments 5 years ago, I can't agree these days. So much happened which made D and its eco system usuable from small companies to big companies. Please provide details where you see the issues, otherwise it is impossible to understand what you mean. Kind regards Andre
Apr 14 2019
parent reply Chris <wendlec tcd.ie> writes:
On Sunday, 14 April 2019 at 12:49:04 UTC, Andre Pany wrote:
 On Sunday, 14 April 2019 at 12:34:12 UTC, Chris wrote:

 While I would agree with your arguments 5 years ago, I can't 
 agree these days. So much happened which made D and its eco 
 system usuable from small companies to big companies.

 Please provide details where you see the issues, otherwise it 
 is impossible to understand what you mean.

 Kind regards
 Andre
One example is vibe.d, I used it until roughly a year ago (I had used it for years) and I remember the dozens of compiler warnings with every new version of dmd. Sönke / vibe.d devs were (and still are?) playing catch-up with dmd. See, the more you use third party stuff in D the more you have to worry about, it's no loner only your own code you have to worry about. What if the maintainer doesn't have the time to fix it? You'll be stuck with a particular version of dmd and vibe.d or any other third party software. This actually makes you think twice if you wanna depend on a lib in D. It's a constant gamble as it may hit you any time. It doesn't happen to me in other languages, funny that. Another one is the eternal issue of autodecode - and now there's talk of std.v2. Every time I come back to have a look at what's going on in D, I think "Thank God I made the switch!" Nowadays I spend more time writing new code (= new features = happier users) instead of fixing / worrying about old code. D may be a bit more stable now, as you say, but we can see autodecode and std.v2 on the horizon. The calm before the storm.
Apr 14 2019
next sibling parent reply Seb <seb wilzba.ch> writes:
On Sunday, 14 April 2019 at 13:08:36 UTC, Chris wrote:
 On Sunday, 14 April 2019 at 12:49:04 UTC, Andre Pany wrote:
 On Sunday, 14 April 2019 at 12:34:12 UTC, Chris wrote:

 While I would agree with your arguments 5 years ago, I can't 
 agree these days. So much happened which made D and its eco 
 system usuable from small companies to big companies.

 Please provide details where you see the issues, otherwise it 
 is impossible to understand what you mean.

 Kind regards
 Andre
One example is vibe.d, I used it until roughly a year ago (I had used it for years) and I remember the dozens of compiler warnings with every new version of dmd. Sönke / vibe.d devs were (and still are?) playing catch-up with dmd.
FYI: those are just deprecations. This thing that allows us to slowly change DMD, but still have stability. Since a bit more than a year, vibe.d is part of the project tester and thus is ensured to always compile as its testsuite is run on every PR.
Apr 14 2019
parent Chris <wendlec tcd.ie> writes:
On Sunday, 14 April 2019 at 13:30:45 UTC, Seb wrote:
 FYI: those are just deprecations. This thing that allows us to 
 slowly change DMD, but still have stability.

 Since a bit more than a year, vibe.d is part of the project 
 tester and thus is ensured to always compile as its testsuite 
 is run on every PR.
Thanks. Good to know that, however, a lot of that stuff came too late for me personally (and it wasn't lack of patience but necessity), and while vibe.d may be stable - for now - what about all the other libs out there? It's still a big gamble with all that talk of std.v2 (which I think is necessary). But if I'll have to rewrite my D code one day anyway, I might as well switch to a different language all together, do it once and be done with it. I don't think I'm alone in this respect. Other users seem to have made similar experiences.
Apr 14 2019
prev sibling parent Tourist <gravatar gravatar.com> writes:
On Sunday, 14 April 2019 at 13:08:36 UTC, Chris wrote:
 Another one is the eternal issue of autodecode - and now 
 there's talk of std.v2. Every time I come back to have a look 
 at what's going on in D, I think "Thank God I made the switch!" 
 Nowadays I spend more time writing new code (= new features = 
 happier users) instead of fixing / worrying about old code. D 
 may be a bit more stable now, as you say, but we can see 
 autodecode and std.v2 on the horizon. The calm before the storm.
As far as I understand std.v2 is meant to preserve compatibility not mess it up. It is a change of direction from changing to adding.
Apr 14 2019
prev sibling next sibling parent reply Laeeth Isharc <laeeth kaleidic.io> writes:
On Sunday, 14 April 2019 at 12:34:12 UTC, Chris wrote:
 On Sunday, 14 April 2019 at 09:42:01 UTC, Laeeth Isharc wrote:
 [...]

 Yes - the tolerance for experimentation is an important 
 question.
  In firms where there isn't much of a tolerance for 
 experimenting and for some of those experiments to fail then 
 it's probably not the right environment to use D.  But I think 
 the more interesting places to work are quite different.
That's all good and well and I sincerely congratulate you on your success. But what I see is the following divide: those who say that D works for their business usually use it for very specific purposes with a custom made ecosystem they've built up over the years (as I did too) maybe bound to a particular version of dmd or D1, and it's often for in-house purposes, e.g. analyzing the stock market or optimizing internet ads or machine learning. D is of course a good tool for that kinda stuff (as is Lisp or Scala). But once you have to step out of your biotope things get hairy. Once customers depend on your software directly (as in: installing it directly on a machine, interfacing with it via plug ins or accessing an API on your web server), you're out in the wild with D as far as tooling and stability (breaking changes) are concerned. In other words, D is good for fenced off software that is built for very specific purposes. When it comes to "general purpose", however, it's a different story all together. This is what I'm trying to convey.
Yes well I don't claim to know about the demands of a business having lots of customers. I would prefer to have as few customers as possible just due to temperament. And it's about who your customers are, not just the number of them. Weka.io have done well but they distribute binaries not source. Like I say - I think most code is developed behind closed walls. And I would guess that it's a minority of commercial code that is distributed as source libraries.
 D was a personal success for you, good, but I'm sure in a few 
 years people will tell similar stories about Crystal, Nim and 
 whatnot.
Of course and I hope those languages succeed. Zig too. It's a big world and there is room for plenty of emerging languages. I don't think the success of one must come at the expense of others - I don't believe life is a zero-sum game as it's inherently generative.
 When you started using D it had the edge over other languages 
 in some respects, but other languages have caught up and offer 
 ease of use on top of that.
No I don't think so. I think it was better for me and it still is. That doesn't mean it's better for you because you are a different person doing different things. If you come to dconf I will show you some of the things we are doing. Or there's an event the day before that might be interesting. Laeeth at kaleidic dot io > This is what doesn't
 register with the D community. Some users live happily in their 
 respective self-made D biotopes, while others want more, a 
 broader focus (and they mean well as they want D to be 
 suceessful in the world not just in niches). These are the two 
 factions, and it's the biotope faction that dominates the 
 Foundation and the forum,
The Foundation is a new creature that doesn't do that much right now. People talk of it like an empire! Bearing in mind Ali wrote a book making it easy to learn D and he is helping the Foundations I hardly think one had grounds to say the Foundation is oriented towards narrow uses of D. I sponsored the Autumn of Code and the projects selected weren't things that are the biggest priority for me personally, but they were good projects that would benefit D overall. So I don't really recognise your assertion there either. Maybe I will have another announcement ready by Dconf, but we shall see. Importing C and later C++ headers - do you see that as a niche thing? How about making it possible to write Excel add-ins and Jupyter kernels in D? In my opinion you need to justify your assertion better. indeed the "biotopeism" in the
 community is so far advanced that people have stared to fork D, 
 the ultimate stage of "Ok, I'll do my own thing.", which is of 
 course only a logical consequence of the insular mentality that 
 permeates D culture. You encourage people to do it themselves, 
 they will finally fork.
Yes it's a bunch of opinionated individualists. Plenty of people forked D already but I wouldn't say there's much information in that - rather I would be extremely puzzled if people weren't forking D. Whether anything should come of it I don't know.
 As there is no way the two factions can communicate with each 
 other, there is only one logical consequence. The faction with 
 the broader focus (like myself) wanders off and what remains 
 are the die hard users who are happy in their biotope, so D 
 will remain a niche language and, of course, there's the danger 
 that some people will break off, fork D and add to the general 
 chaos (and you may read questions like this on Stackoverflow: 
 "Which D should I use? There are N implementations. Dragon, 
 Volt, BetterD, CleanD, SaneD...").
It's really strange to me. You seem happier not using D and maybe it was the right decision for you given the business you are in. But without skin in the game you have very strong opinions about the direction the language ecosystem should develop towards. If you look at the companies using D, how would you describe the niche of D commercially? I don't think it's possible to do so based on domain. And note that certain others make the opposite complaint - that D doesn't have a niche and that people should decide what it should be. I think that adoption is driven by the kinds of people that use D rather than the domain - it's a question of capabilities, culture and values. Early adopters aren't like normal people. D isn't ready for adoption by the masses yet, and that's entirely normal and just how the innovation cycle tends to unfold.
Apr 14 2019
parent reply Chris <wendlec tcd.ie> writes:
On Sunday, 14 April 2019 at 13:47:04 UTC, Laeeth Isharc wrote:
 It's really strange to me.  You seem happier not using D and 
 maybe it was the right decision for you given the business you 
 are in.  But without skin in the game you have very strong 
 opinions about the direction the language ecosystem should 
 develop towards.
I simply see what others do right and tell you guys about it so it may help D to thrive (and I have a few years of (good and bad) experience with D too).
 If you look at the companies using D, how would you describe 
 the niche of D commercially?  I don't think it's possible to do 
 so based on domain.  And note that certain others make the 
 opposite complaint - that D doesn't have a niche and that 
 people should decide what it should be.
It's pretty niche, as far as I know, very specific software, Assembly is still being used for specific tasks too and the companies using it may be very successful, but that doesn't say anything about the overall qualities of the language.
 I think that adoption is driven by the kinds of people that use 
 D rather than the domain - it's a question of capabilities, 
 culture and values.
Yes, very specific use cases, crafted by expert programmers. But the same could be said about Assembly, Lisp and C/C++.
 Early adopters aren't like normal people.  D isn't ready for 
 adoption by the masses yet, and that's entirely normal and just 
 how the innovation cycle tends to unfold.
I'd agree if you were talking about Crystal, but D after 20 years??? Nah!
Apr 14 2019
parent reply Chris <wendlec tcd.ie> writes:
On Sunday, 14 April 2019 at 14:04:53 UTC, Chris wrote:
[...]
One thing I always notice when I look at young languages like Crystal, Zig, Kotlin etc is that they are very carefully crafted, while D just throws in random features that seem cool and fun to work with but are never really finished.
Apr 14 2019
parent reply Julian <julian.fondren gmail.com> writes:
On Sunday, 14 April 2019 at 14:17:20 UTC, Chris wrote:
 On Sunday, 14 April 2019 at 14:04:53 UTC, Chris wrote:
[...]
One thing I always notice when I look at young languages like Crystal, Zig, Kotlin etc is that they are very carefully crafted, while D just throws in random features that seem cool and fun to work with but are never really finished.
This kind of language is just boring. How about a table? You can make one in Emacs org-mode very easily: | D feature | random? | seems cool | fun? | incomplete? | |--------------------+---------+------------+------+------------------------| | scope(exit) et al. | ??? | sure | yes? | where's scope(enter) ? | | | | | | | Data's great. You can add to it, explain it, debate it. None of the vague impressions posted to this thread are ever even answered.
Apr 14 2019
parent reply Chris <wendlec tcd.ie> writes:
On Sunday, 14 April 2019 at 15:10:35 UTC, Julian wrote:

 This kind of language is just boring. How about a table?

 You can make one in Emacs org-mode very easily:

 | D feature          | random? | seems cool | fun? | incomplete?
           |
 |--------------------+---------+------------+------+------------------------|
 | scope(exit) et al. | ???     | sure       | yes? | where's 
 scope(enter) ? |
 |                    |         |            |      |
           |

 Data's great. You can add to it, explain it, debate it. None
 of the vague impressions posted to this thread are ever even
 answered.
Uh, what is this talk of RefRange all about, partial constructors, but no partial destructors? There are so many broken features, ... Other languages might be boring when they are young, but I prefer stability and sound principles over fanciness - and don' forget that those languages also progress over the years. It's like building up muscle. The slower you do it the longer the muscle will remain strong.
Apr 14 2019
parent reply Julian <julian.fondren gmail.com> writes:
On Sunday, 14 April 2019 at 15:25:50 UTC, Chris wrote:
 On Sunday, 14 April 2019 at 15:10:35 UTC, Julian wrote:

 This kind of language is just boring. How about a table?

 You can make one in Emacs org-mode very easily:

 | D feature          | random? | seems cool | fun? | 
 incomplete?
           |
 |--------------------+---------+------------+------+------------------------|
 | scope(exit) et al. | ???     | sure       | yes? | where's 
 scope(enter) ? |
 |                    |         |            |      |
           |

 Data's great. You can add to it, explain it, debate it. None
 of the vague impressions posted to this thread are ever even
 answered.
Uh, what is this talk of RefRange all about, partial constructors, but no partial destructors? There are so many broken features,
So you don't have a clear idea either. This is where the discipline of actually listing things out and being specific can help you. Maybe you've had a few clear ideas, after encountering some problems, but then since you only ever complained them with vague language, you forgot what you wanted to complain about.
Apr 14 2019
parent reply Chris <wendlec tcd.ie> writes:
On Sunday, 14 April 2019 at 15:29:26 UTC, Julian wrote:
 On Sunday, 14 April 2019 at 15:25:50 UTC, Chris wrote:
 On Sunday, 14 April 2019 at 15:10:35 UTC, Julian wrote:

 [...]
Uh, what is this talk of RefRange all about, partial constructors, but no partial destructors? There are so many broken features,
So you don't have a clear idea either. This is where the discipline of actually listing things out and being specific can help you. Maybe you've had a few clear ideas, after encountering some problems, but then since you only ever complained them with vague language, you forgot what you wanted to complain about.
My biggest chagrin has always been the whole string handling issue, but seriously so many issues have come up over the year that I don't actually care to remember.
Apr 14 2019
parent Julian <julian.fondren gmail.com> writes:
On Sunday, 14 April 2019 at 15:46:11 UTC, Chris wrote:
 My biggest chagrin has always been the whole string handling 
 issue,
Great. What's that?
Apr 14 2019
prev sibling next sibling parent Nierjerson <Nierjerson somewhere.com> writes:
On Sunday, 14 April 2019 at 12:34:12 UTC, Chris wrote:
 On Sunday, 14 April 2019 at 09:42:01 UTC, Laeeth Isharc wrote:
 [...]

 Yes - the tolerance for experimentation is an important 
 question.
  In firms where there isn't much of a tolerance for 
 experimenting and for some of those experiments to fail then 
 it's probably not the right environment to use D.  But I think 
 the more interesting places to work are quite different.
That's all good and well and I sincerely congratulate you on your success. But what I see is the following divide: those who say that D works for their business usually use it for very specific purposes with a custom made ecosystem they've built up over the years (as I did too) maybe bound to a particular version of dmd or D1, and it's often for in-house purposes, e.g. analyzing the stock market or optimizing internet ads or machine learning. D is of course a good tool for that kinda stuff (as is Lisp or Scala). But once you have to step out of your biotope things get hairy. Once customers depend on your software directly (as in: installing it directly on a machine, interfacing with it via plug ins or accessing an API on your web server), you're out in the wild with D as far as tooling and stability (breaking changes) are concerned. In other words, D is good for fenced off software that is built for very specific purposes. When it comes to "general purpose", however, it's a different story all together. This is what I'm trying to convey. D was a personal success for you, good, but I'm sure in a few years people will tell similar stories about Crystal, Nim and whatnot. When you started using D it had the edge over other languages in some respects, but other languages have caught up and offer ease of use on top of that. This is what doesn't register with the D community. Some users live happily in their respective self-made D biotopes, while others want more, a broader focus (and they mean well as they want D to be suceessful in the world not just in niches). These are the two factions, and it's the biotope faction that dominates the Foundation and the forum, indeed the "biotopeism" in the community is so far advanced that people have stared to fork D, the ultimate stage of "Ok, I'll do my own thing.", which is of course only a logical consequence of the insular mentality that permeates D culture. You encourage people to do it themselves, they will finally fork.
I agree with this. This is one of the major issues with the general type of personality of those in the D community.[which are going to have certain traits] They fail to see the bigger picture. Most people are not like D users. Also most D users do not program long the same patterns. Basically D users are outliers but they believe they are representatives of the whole. This is only bad because it is myopic and advances D in a certain direction while limiting it in others. They can't understand the limitations because for them they are not limitations. They cannot see the big picture, the forest but they have no clue they can't and they think they do. This is problem of all humans, it's very difficult to get people that don't get it to get it unfortunately... maybe that is a good thing though ultimately. Basically many cults are formed because of this. A cult starts off with a group of people with a central concept that they all agree on and work for. They attract others who have that similar principle. there are only two things that happen: 1. Some people that connect to the group eventually leave because it isn't what they "thought". That is, their principle does not mesh and they are not willing change their principle and leave. 2. Some people that connect have exactly the same principle and so become part of the organization(these usually are the die hard fans) 3. Some people that connect have no real principle and latch on for various reasons but eventually either leave because it isn't what they want or stay for various reasons(acceptance, brainwashing, etc). The outcome though is always the same, the "cult" forms. It consists of people accept the fundamental principles(which may change over time but at any point in time is reinforced as the principle which is generally accepted). What happens though is that it becomes a positive feedback cycle. The principles are reinforced to the lower level people who then reinforce it back. If dissension(which is almost always valid) comes in to play, the dissenters are usually pushed out and this then reinforces the mentalities which become concentrated. It's basically a sort of chemical reaction that occurs. There are so many cults. Basically all large organizations are cults. Some cults are just evil, but not all. But all cults usually end up very myopic. Religion works this way, corporations work this way, government works this way, even colleges work this way.
 As there is no way the two factions can communicate with each 
 other, there is only one logical consequence. The faction with 
 the broader focus (like myself) wanders off and what remains 
 are the die hard users who are happy in their biotope, so D 
 will remain a niche language and, of course, there's the danger 
 that some people will break off, fork D and add to the general 
 chaos (and you may read questions like this on Stackoverflow: 
 "Which D should I use? There are N implementations. Dragon, 
 Volt, BetterD, CleanD, SaneD...").
Yep, this is the problem with cults. You get it in your way of thinking. Just realize it is a natural tendency of the universe... if we were talking about religion we'd have Baptists, protestants, catholics, buddhists, etc... It it were governments we have communists, democracies, monarchies, dictatorships, etc... It's not that humans do this, it is part of life to fracture like this. We see it in evolution. Species fracture in to sub-species. Materials fracture(like attracts like) It's an unfortunate consequence of existence I believe. The problem is that most people don't understand these things at work. There is always some insane justification: e.g., "He's a moron that he thinks this verse means this, we need to push him out because he isn't aligned with our belief and I think he's must be a sinner! I think I hear him talking about sacrificing sheep, we can't have that! We are allowed only to sacrifice cows!". Almost always the fracturing is based in ignorance. The reason is that the truth does not fracture, it is what it is. See, both you and I are probably completely different, have come to similar conclusions, ideas... but even our ideas are different... because we are different. I'm sure we can understand our differences, but even if we formed some organization eventually our misunderstands(or ignorance) will cause fractures between us... although maybe we could deal with it better. My point is that these issues are much deeper than any singular individuals. I also believe that the better one understands it the better one can adapt and use it for positive things(I do think there is a "direction" to the universe, fracturing might be a way to isolate the bad things and get rid of them, survival of the fittest type of thing at play). Unfortunately people who are deepest in the cult are the hardest to change. It's easy to leave something when you are on the fringes. The seed crystals(What we are talking about is a sort of crystallization process that takes place in all things) are the generators that the molecules attach too and grow off of. The seeds end up surrounded and "supported" by all the other similar molecules. The outside has to dissolve before the seed does(since it's generally a uniform crystallization). I don't know if this is true, but there is evidence things work this way... and if it is true, it means that we will never get anywhere with our logic. No matter what kinda of works we use, it will essentially be worthless. That is, we can't convince the leadership here that there is another way(rather, that there is a broader way) because the universe isn't going to let that happen. At most if we wanted things to change it would have to be from the outside in, but hoping for an inside out change is trying to move a mountain with a spoon... it can be done, and sometimes it is done, but I'm not going to do it and I doubt you will want to try to do it either. My main point with all this is that maybe these things are beyond our abilities to change. Change seems so easy for some and so hard for others(and depends on what is to be changed). It may have nothing to do with those individuals and completely to do with the universe forcing them not change(although, I think we both would agree that we can't prove this is absolutely true so it's worth trying to move the mountain... who knows, maybe there is a secret button somewhere that will teleport it to where we want!)
Apr 14 2019
prev sibling parent silentwatcher <silentwatcher aol.com> writes:
On Sunday, 14 April 2019 at 12:34:12 UTC, Chris wrote:
 On Sunday, 14 April 2019 at 09:42:01 UTC, Laeeth Isharc wrote:
 [...]

 As there is no way the two factions can communicate with each 
 other, there is only one logical consequence. The faction with 
 the broader focus (like myself) wanders off and what remains 
 are the die hard users who are happy in their biotope, so D 
 will remain a niche language and, of course, there's the danger 
 that some people will break off, fork D and add to the general 
 chaos (and you may read questions like this on Stackoverflow: 
 "Which D should I use? There are N implementations. Dragon, 
 Volt, BetterD, CleanD, SaneD...").
i think you are right.
Apr 14 2019
prev sibling parent reply Jon Degenhardt <jond noreply.com> writes:
On Sunday, 14 April 2019 at 09:42:01 UTC, Laeeth Isharc wrote:
 It's true that there's a high barrier to entry in the beginning 
 with D - much better now, but if you are put off by discomfort 
 and needing to figure things out for yourself then it's going 
 to be quite a tough experience.  D doesn't place a high value 
 on being accessible and if that's what is important then maybe 
 somewhere else would be a better fit.
Interesting. This appears to be a common sentiment, but it's opposite of mine and many other folks I talk to. I've programmed in a number of languages, and I'd say that Python is easier to get started in, but that most other languages are materially harder. Might be useful to understand why some people find D easy and others find it hard. It could be related to past programming experience, but also might be related to the types of tasks being performed, the way people learn, or differences in approach to programming. (e.g. Perhaps early success or not is being determined by role the ecosystem plays in initial tasks chosen or programming approach used.) This is a material topic because programming model simplicity is, or should be, a strength of D.
 Yes - the tolerance for experimentation is an important 
 question.
  In firms where there isn't much of a tolerance for 
 experimenting and for some of those experiments to fail then 
 it's probably not the right environment to use D.  But I think 
 the more interesting places to work are quite different.
The computing landscape is changing rapidly, and there are many technologies companies need to consider experimental investments in, not just programming languages. In effect, when it comes to investments in advanced/experimental technology a company might choose to make, programming languages are competing with many other technologies, not just other programming languages.
Apr 14 2019
parent Laeeth Isharc <laeeth kaleidic.io> writes:
On Sunday, 14 April 2019 at 19:47:59 UTC, Jon Degenhardt wrote:
 On Sunday, 14 April 2019 at 09:42:01 UTC, Laeeth Isharc wrote:
 It's true that there's a high barrier to entry in the 
 beginning with D - much better now, but if you are put off by 
 discomfort and needing to figure things out for yourself then 
 it's going to be quite a tough experience.  D doesn't place a 
 high value on being accessible and if that's what is important 
 then maybe somewhere else would be a better fit.
Interesting. This appears to be a common sentiment, but it's opposite of mine and many other folks I talk to. I've programmed in a number of languages, and I'd say that Python is easier to get started in, but that most other languages are materially harder.
Thanks for sharing your experience, Jon - I very much appreciate it. I actually found it easier to learn D the language than Python. Just at the time the library documentation and some compiler problems made some aspects harder. The situation there is remarkably better than it once was - to the extent that I can actually show the Phobos docs (with editable, runnable examples) to colleagues and say we should aim to have documentation for internal libraries as good as this. But I did know C pretty well (by the standards of the era I learnt it, not by modern standards) and to me at least D felt very natural. I think the accessibility is more when it comes to rough edges. It's not that D is difficult, but that making D as accessible as possible isn't a priority of the community when a choice has to be made. Whereas by all accounts Rust is not easy to learn, but they seem to place a great deal of effort in making it accessible. I'm not saying that's a good thing - it's just a question of different community values.
 Might be useful to understand why some people find D easy and 
 others find it hard. It could be related to past programming 
 experience, but also might be related to the types of tasks 
 being performed, the way people learn, or differences in 
 approach to programming. (e.g. Perhaps early success or not is 
 being determined by role the ecosystem plays in initial tasks 
 chosen or programming approach used.) This is a material topic 
 because programming model simplicity is, or should be, a 
 strength of D.
If you are coming from C, at least the old-school way I learnt it (reading sources of Fidonet, BinkleyTerm, things like that) then I think D is quite easy. You can write D like C and when you have a problem where a feature of D would be helpful it's easy to remind yourself about it and learn it that way. It sounds like the same is true for C++ programmers. Getting people to recognise that object-orientation isn't the only way to solve problems might be harder, though that's a broader question.
 Yes - the tolerance for experimentation is an important 
 question.
  In firms where there isn't much of a tolerance for 
 experimenting and for some of those experiments to fail then 
 it's probably not the right environment to use D.  But I think 
 the more interesting places to work are quite different.
The computing landscape is changing rapidly, and there are many technologies companies need to consider experimental investments in, not just programming languages. In effect, when it comes to investments in advanced/experimental technology a company might choose to make, programming languages are competing with many other technologies, not just other programming languages.
Yes - I've met senior people (C level of important divisions) at Citibank and my colleague similarly at JPM. It's a matter of public record that they are partitioning their efforts, creating incubators,startups within the larger firm. You would expect them not to be at all interested in what we are doing, but they are a little bit. It's a time of change and nobody has a monopoly on insights about what might work. Ocaml makes D look popular, but I understand Bloomberg are doing some interesting work there. Language choices are probably the least interesting aspect of broader technical and strategic decisions. But strangely people get inordinately emotionally involved in them.
Apr 20 2019
prev sibling next sibling parent Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Sunday, 14 April 2019 at 04:48:00 UTC, Walter Bright wrote:
 On 4/13/2019 2:35 PM, Mike Franklin wrote:
 Lately, I find the things that Walter is doing in DMD to be a 
 very low priority compared to all of the bugs in bugzilla for 
 which only he is qualified to fix.  I wish he'd stop 
 refactoring code and start fixing bugs, but, maybe his 
 refactorings of late are laying some groundwork for more 
 important stuff.
I gave a list a couple times on technical debt in DMD, and nobody picked up the flag. So I've been doing it.
Uh, yes we have, and you response was not far from get stuffed (maybe that was Andrei's, don't remember).
 If this is let go for too long, the code becomes unmaintainable.
You don't say.
Apr 14 2019
prev sibling next sibling parent silentwatcher <silentwatcher aol.com> writes:
On Sunday, 14 April 2019 at 04:48:00 UTC, Walter Bright wrote:
 On 4/13/2019 2:35 PM, Mike Franklin wrote:
 Lately, I find the things that Walter is doing in DMD to be a 
 very low priority compared to all of the bugs in bugzilla for 
 which only he is qualified to fix.  I wish he'd stop 
 refactoring code and start fixing bugs, but, maybe his 
 refactorings of late are laying some groundwork for more 
 important stuff.
I gave a list a couple times on technical debt in DMD, and nobody picked up the flag. So I've been doing it. If this is let go for too long, the code becomes unmaintainable.
you need to stop whining and start to organize something. stop the development, stabilize and eradicate the experiments. find out what people need and implement that first - treat this like a business. stop whining - do something
Apr 14 2019
prev sibling next sibling parent reply Mike Franklin <slavo5150 yahoo.com> writes:
On Sunday, 14 April 2019 at 04:48:00 UTC, Walter Bright wrote:

 I gave a list a couple times on technical debt in DMD, and 
 nobody picked up the flag. So I've been doing it.

 If this is let go for too long, the code becomes unmaintainable.
I understand. I'll give the list another look and maybe make a few PRs in passing. You could make things a lot easier on everyone and just adopt The D Style for DMD: https://dlang.org/dstyle.html#phobos_documentation For those who don't know and want to help Walter out, the list is here: https://forum.dlang.org/post/p6oibo$1lmi$1 digitalmars.com Mike
Apr 14 2019
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/14/2019 1:01 AM, Mike Franklin wrote:
 For those who don't know and want to help Walter out, the list is here:  
 https://forum.dlang.org/post/p6oibo$1lmi$1 digitalmars.com
And some examples of what I'm trying to accomplish: https://github.com/dlang/dmd/pull/9510 https://github.com/dlang/dmd/pull/9527 Like: super(ident); this.loc = loc; replaced with: super(loc, ident); https://github.com/dlang/dmd/commit/033879a6b733aa121e354b4399ecdb7fa59cc923#diff-e9eb240d8785a5470c85ca78b4145383R125 This is more than just cosmetic. The first method cannot be used to build a const object, the second can. Also, upending the code base with large changes and reorganizations is not likely to get incorporated, and be aware that people can and do disagree strongly about what constitutes improvement and what doesn't. When in doubt, do a small version and see how it goes.
Apr 14 2019
parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Sunday, 14 April 2019 at 08:21:38 UTC, Walter Bright wrote:
 Also, upending the code base with large changes and 
 reorganizations is not likely to get incorporated, and be aware 
 that people can and do disagree strongly about what constitutes 
 improvement and what doesn't. When in doubt, do a small version 
 and see how it goes.
The DMD codebase suffers from systemic misorganisation, both on the massive function level, and the complete lack of organisation of the files in the source directory. Small change are never going to fix those issues. You are trying to find a local optimum, we need to find a more global one, and that involves doing things like https://github.com/dlang/dmd/pull/9511#discussion_r270614236
Apr 14 2019
next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/14/2019 1:33 AM, Nicholas Wilson wrote:
 The DMD codebase suffers from systemic misorganisation, both on the massive 
 function level, and the complete lack of organisation of the files in the
source 
 directory.
We're not going to get anywhere litigating that here. Defer to DConf.
 Small change are never going to fix those issues.
There's an lot of low hanging fruit that needs doing. I know it's not as exciting or fulfilling as giant reshuffles, which is why I wind up doing it.
Apr 14 2019
parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Sunday, 14 April 2019 at 08:47:18 UTC, Walter Bright wrote:
 On 4/14/2019 1:33 AM, Nicholas Wilson wrote:
 The DMD codebase suffers from systemic misorganisation, both 
 on the massive function level, and the complete lack of 
 organisation of the files in the source directory.
We're not going to get anywhere litigating that here. Defer to DConf.
I plan to ;)
 Small change are never going to fix those issues.
There's an lot of low hanging fruit that needs doing.
Be that as it may, I'm interested in bang for buck comprehensibility and navigability improvements. The low hanging stuff you're doing, while nice, is rather lower down my, and I'm sure many others, list of perceived bang for buck improvements.
Apr 14 2019
parent reply Tourist <gravatar gravatar.com> writes:
On Sunday, 14 April 2019 at 10:48:15 UTC, Nicholas Wilson wrote:
 On Sunday, 14 April 2019 at 08:47:18 UTC, Walter Bright wrote:
 On 4/14/2019 1:33 AM, Nicholas Wilson wrote:
 The DMD codebase suffers from systemic misorganisation, both 
 on the massive function level, and the complete lack of 
 organisation of the files in the source directory.
We're not going to get anywhere litigating that here. Defer to DConf.
I plan to ;)
 Small change are never going to fix those issues.
There's an lot of low hanging fruit that needs doing.
Be that as it may, I'm interested in bang for buck comprehensibility and navigability improvements. The low hanging stuff you're doing, while nice, is rather lower down my, and I'm sure many others, list of perceived bang for buck improvements.
I'm going by what I see in the discussion and the links shown, not familiar with the codebase. YMMV. Walter refactors on timeless programming principles, more functional, more immutable, more encapsulation, more information hiding. You don't care for those. You want to refactor file and directory organization fluff based on personal preference and fads. The greatest mistake W&A did was to get contributors incapable of doing original work. They bicker forever about reorganizations that do nothing.
Apr 14 2019
parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Sunday, 14 April 2019 at 15:16:09 UTC, Tourist wrote:
 I'm going by what I see in the discussion and the links shown, 
 not familiar with the codebase. YMMV.

 Walter refactors on timeless programming principles, more 
 functional, more immutable, more encapsulation, more 
 information hiding. You don't care for those.
No, those are useful. I think that there are more impactful things that can be done.
 You want to refactor file and directory organization
Because we have ~120 source files in the same directory that do vastly different things and alphabetic sorting doesn't work when the files name need a 'd' prepended because otherwise the module name will collide with a keyword. Its a PITA to navigate.
 fluff based on personal preference and fads.
I'm certainly not the only one who wants that.
 The greatest mistake W&A did was to get contributors incapable 
 of doing original work.
I suggest you do some original work (and some research) before you accuse others of being incapable of original work. FYI, I wrote dcompute, and most of the DMD/Druntime/Phobos PRs merged in the last 6 months went through me.
 They bicker forever about reorganizations that do nothing.
That you think the expected value of the reorganisations is zero shows you have no idea what you're talking about. I'd recommend dropping dropping that attitude until you do.
Apr 14 2019
parent reply Rose <rose sarajevo.com> writes:
On Sunday, 14 April 2019 at 19:13:19 UTC, Nicholas Wilson wrote:
 On Sunday, 14 April 2019 at 15:16:09 UTC, Tourist wrote:
 I'm going by what I see in the discussion and the links shown, 
 not familiar with the codebase. YMMV.

 Walter refactors on timeless programming principles, more 
 functional, more immutable, more encapsulation, more 
 information hiding. You don't care for those.
No, those are useful. I think that there are more impactful things that can be done.
 You want to refactor file and directory organization
Because we have ~120 source files in the same directory that do vastly different things and alphabetic sorting doesn't work when the files name need a 'd' prepended because otherwise the module name will collide with a keyword. Its a PITA to navigate.
 fluff based on personal preference and fads.
I'm certainly not the only one who wants that.
 The greatest mistake W&A did was to get contributors incapable 
 of doing original work.
I suggest you do some original work (and some research) before you accuse others of being incapable of original work. FYI, I wrote dcompute, and most of the DMD/Druntime/Phobos PRs merged in the last 6 months went through me.
 They bicker forever about reorganizations that do nothing.
That you think the expected value of the reorganisations is zero shows you have no idea what you're talking about. I'd recommend dropping dropping that attitude until you do.
Argument by majority. Good Work. I know od your work on dcompute. You should stick to that. Language work and community work is different. The past years of pull requests: https://github.com/pulls?utf8=%E2%9C%93&q=is%3Apr+user%3Adlang+closed%3A2015-01-01..2015-04-14+ https://github.com/pulls?utf8=%E2%9C%93&q=is%3Apr+user%3Adlang+closed%3A2016-01-01..2016-04-14+ https://github.com/pulls?utf8=%E2%9C%93&q=is%3Apr+user%3Adlang+closed%3A2017-01-01..2017-04-14+ https://github.com/pulls?utf8=%E2%9C%93&q=is%3Apr+user%3Adlang+closed%3A2018-01-01..2018-04-14+ https://github.com/pulls?utf8=%E2%9C%93&q=is%3Apr+user%3Adlang+closed%3A2019-01-01..2019-04-14+ 1149 in 2015 851 in 2016 934 in 2017 1789 in 2018 933 in 2019 Not great. But you say 6 months previous from now: https://github.com/pulls?utf8=%E2%9C%93&q=is%3Apr+user%3Adlang+closed%3A2014-10-14..2015-04-14+ https://github.com/pulls?utf8=%E2%9C%93&q=is%3Apr+user%3Adlang+closed%3A2015-10-14..2016-04-14+ https://github.com/pulls?utf8=%E2%9C%93&q=is%3Apr+user%3Adlang+closed%3A2016-10-14..2017-04-14+ https://github.com/pulls?utf8=%E2%9C%93&q=is%3Apr+user%3Adlang+closed%3A2017-10-14..2018-04-14+ https://github.com/pulls?utf8=%E2%9C%93&q=is%3Apr+user%3Adlang+closed%3A2018-10-14..2019-04-14+ 1710 in 2014-2015 1271 in 2015-2016 1399 in 2016-2017 2699 in 2017-2018 1717 in 2018-2019 You are earning 3000 dollars from our donations to bearly match work that was done for free. Good Work.
Apr 14 2019
parent Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Sunday, 14 April 2019 at 22:57:48 UTC, Rose wrote:
 On Sunday, 14 April 2019 at 19:13:19 UTC, Nicholas Wilson wrote:
 On Sunday, 14 April 2019 at 15:16:09 UTC, Tourist wrote:
 fluff based on personal preference and fads.
I'm certainly not the only one who wants that.
Argument by majority. Good Work.
Lolwat? How else do you suggest I argue that it is not personal preference?
 I know od[sic] your work on dcompute. You should stick to that. 
 Language work and community work is different.
The dcompute project, in terms of work, is like 90% language and compiler. I'm the one that started the DLF quarterly meetings, I'm the one that proposed the Dconf AGM,
 [stats]

 You are earning 3000 dollars from our donations to bearly match 
 work that was done for free. Good Work.
Ahh, the fallacy that past trends will continue. First of all, the number of PRs being submitted has changed over time, you should de-trend that, as has the number of reviewers, ditto. I was asked to take on that role because there was an ever-growing queue of stagnant PRs and a dearth of reviewers. If you don't want to donate to the work I have done, thats fine, but don't go making fallacious insults. That kind of behaviour is not welcome here.
Apr 14 2019
prev sibling parent reply Tourist <gravatar gravatar.com> writes:
On Sunday, 14 April 2019 at 08:33:29 UTC, Nicholas Wilson wrote:
 On Sunday, 14 April 2019 at 08:21:38 UTC, Walter Bright wrote:
 Also, upending the code base with large changes and 
 reorganizations is not likely to get incorporated, and be 
 aware that people can and do disagree strongly about what 
 constitutes improvement and what doesn't. When in doubt, do a 
 small version and see how it goes.
The DMD codebase suffers from systemic misorganisation, both on the massive function level, and the complete lack of organisation of the files in the source directory. Small change are never going to fix those issues. You are trying to find a local optimum, we need to find a more global one, and that involves doing things like https://github.com/dlang/dmd/pull/9511#discussion_r270614236
Long functions and files not "well" organized are the typical issues noticed by an incompetent maintainer.
Apr 14 2019
parent Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Sunday, 14 April 2019 at 12:34:44 UTC, Tourist wrote:
 On Sunday, 14 April 2019 at 08:33:29 UTC, Nicholas Wilson wrote:
 On Sunday, 14 April 2019 at 08:21:38 UTC, Walter Bright wrote:
 Also, upending the code base with large changes and 
 reorganizations is not likely to get incorporated, and be 
 aware that people can and do disagree strongly about what 
 constitutes improvement and what doesn't. When in doubt, do a 
 small version and see how it goes.
The DMD codebase suffers from systemic misorganisation, both on the massive function level, and the complete lack of organisation of the files in the source directory. Small change are never going to fix those issues. You are trying to find a local optimum, we need to find a more global one, and that involves doing things like https://github.com/dlang/dmd/pull/9511#discussion_r270614236
Long functions and files not "well" organized are the typical issues noticed by an incompetent maintainer.
Hahahaha! Please, for my amusement, give me a summary of what Semantic3Visitor.visit(FuncDeclaration) does and tell me with a strait face that it took you less than 3 hours to find out.
Apr 14 2019
prev sibling parent Tourist <gravatar gravatar.com> writes:
On Sunday, 14 April 2019 at 04:48:00 UTC, Walter Bright wrote:
 On 4/13/2019 2:35 PM, Mike Franklin wrote:
 Lately, I find the things that Walter is doing in DMD to be a 
 very low priority compared to all of the bugs in bugzilla for 
 which only he is qualified to fix.  I wish he'd stop 
 refactoring code and start fixing bugs, but, maybe his 
 refactorings of late are laying some groundwork for more 
 important stuff.
I gave a list a couple times on technical debt in DMD, and nobody picked up the flag. So I've been doing it. If this is let go for too long, the code becomes unmaintainable.
Everyone is busy doing Good Work so the only who can do Great Work must do Right Work.
Apr 14 2019
prev sibling parent Seb <seb wilzba.ch> writes:
On Saturday, 13 April 2019 at 14:19:51 UTC, Mike Franklin wrote:
 On Friday, 12 April 2019 at 16:45:04 UTC, H. S. Teoh wrote:

 To be honest, I've seriously thought about forking D on 
 several occasions.  I haven't gone through with it yet, for 
 many reasons.  But if push comes to shove, I'm ready to take 
 it on, and I'm pretty certain that I'm not alone.
Yes, you're not alone. Mike
Yes, you're most definitely not alone: https://github.com/dragon-lang/dc (complete fork) https://github.com/wilzbach/dts (proposal for a new standard library) The main reason dts isn't existing yet is that I am currently really low on time.
Apr 13 2019
prev sibling next sibling parent wjoe <fake example.com> writes:
The D Language frontend merged into GCC9 [0]. Why would they add 
support for a failed language ?

[0] https://www.gnu.org/software/gcc/gcc-9/changes.html
Apr 12 2019
prev sibling next sibling parent Guillaume Piolat <first.last gmail.com> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 I have been using D since around 2012 or 2013, instantly fell 
 in love, use to post on the forms a lot under the name Tofu 
 Ninja. I was convinced D was the future but since then I have 
 become disheartened. The biggest thing that makes me feel like 
 this is that in the 7 years I have been using D I literally 
 have never met another programmer IRL who has even heard of it.
I'm fortunate to know about 10 other D programmers (or people that had to work with D) personally. I don't think anyone didn't like the language.
 I feel like D has failed.
I think D provides lasting value very easily and you can tell this by the increased support in https://dlang.org/orgs-using-d.html (Mercedes benz coming lastly, and sponsoring DConf). It has the right attributes to create added value.
 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years?
Not so soon because the picture is darkened by increasingly nihilistic language that removes time-proven approaches like good syntax, OOP and exceptions... See the history of scorbut to know how availability of multiple solutions can obscure the picture for a long time. D is typically the product that doesn't succeed in internet forums, but is popular in the trenches. There really are two classes of products, "good-for-status" products you can talk about when describing your taste, and "good-at-home" products you can actually use intimately. D is "good at home".
Apr 12 2019
prev sibling next sibling parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 The biggest thing that makes me feel like this is that in the 7 
 years I have been using D I literally have never met another 
 programmer IRL who has even heard of it.
I'm at ACCU ATM and most of the people I've talked to about have heard of it,
 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years? Am I missing some part of the 
 picture? Or am I right and if so what can be done about it?
If the vision can be revitalised and the processes streamlined to extract value out of ideas then it has a great future. If not, well...
Apr 12 2019
parent Russel Winder <russel winder.org.uk> writes:
On Fri, 2019-04-12 at 17:50 +0000, Nicholas Wilson via Digitalmars-d
wrote:
[=E2=80=A6]
 I'm at ACCU ATM and most of the people I've talked to about have=20
 heard of it,
A few ACCU attenders are even using D. But not many. If D claims to be a C++ replacement then ACCU conferences really should have a D track every year as justification of that claim. This year Rust has a strong showing as does Kotlin and Kotlin/Native. Go is not really represented. [=E2=80=A6] --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Dr Russel Winder t: +44 20 7585 2200 41 Buckmaster Road m: +44 7770 465 077 London SW11 1EN, UK w: www.russel.org.uk
Apr 12 2019
prev sibling next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/12/2019 12:35 AM, Tofu Kaitlyn wrote:
 I have been using D since around 2012 or 2013, instantly fell in love, use to 
 post on the forms a lot under the name Tofu Ninja. I was convinced D was the 
 future but since then I have become disheartened. The biggest thing that makes 
 me feel like this is that in the 7 years I have been using D I literally have 
 never met another programmer IRL who has even heard of it. I put on my resume 
 that I like D and every interview I get asked about it, having to explain what
D 
 even is because they have never heard of it. I have never seen a job posting 
 listing D. Never see any projects pop up on /r/programming using D. It feels 
 like to the rest of the programming universe, D doesn't even exist. Sometimes
I 
 see threads on reddit like "what's your favorite programming language" and I 
 always look for D but never find it.
It's up to all of us whenver we see a thread like that, to respond appropriately. Don't wait for someone else to. For example, whenever there's a post about D on reddit, someone from Rust, usually Steve Blatnick, pops up and starts talking about Rust.
Apr 12 2019
next sibling parent reply Suleyman <sahmi.soulaimane gmail.com> writes:
I think the problem with D is that it started getting a mass 
adoption and this requires a bigger management, for example: 
regular user polls, prioritization, concentration of efforts, 
friendly contribution guides, time limits on issue resolutions, 
regular health stats, coordination with sponsors, maybe even a 
podcast especially for what would be a lightning for introducing 
libraries and new features... etc. D is no longer a niche 
language and this is a problem.
Apr 12 2019
next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/12/2019 5:25 PM, Suleyman wrote:
 I think the problem with D is that it started getting a mass adoption and this 
 requires a bigger management, for example: regular user polls, prioritization, 
 concentration of efforts, friendly contribution guides, time limits on issue 
 resolutions, regular health stats, coordination with sponsors, maybe even a 
 podcast especially for what would be a lightning for introducing libraries and 
 new features... etc. D is no longer a niche language and this is a problem.
Something you can do to help is as I said - when you see other languages mentioned, mention D. It helps a lot more than you might think.
Apr 12 2019
next sibling parent silentwatcher <silentwatcher aol.com> writes:
On Saturday, 13 April 2019 at 03:46:51 UTC, Walter Bright wrote:
 On 4/12/2019 5:25 PM, Suleyman wrote:
 I think the problem with D is that it started getting a mass 
 adoption and this requires a bigger management, for example: 
 regular user polls, prioritization, concentration of efforts, 
 friendly contribution guides, time limits on issue 
 resolutions, regular health stats, coordination with sponsors, 
 maybe even a podcast especially for what would be a lightning 
 for introducing libraries and new features... etc. D is no 
 longer a niche language and this is a problem.
Something you can do to help is as I said - when you see other languages mentioned, mention D. It helps a lot more than you might think.
great, you are avoiding to talk about the problems again. how about: The sole reason that D has failed is the management of D has failed... and, of course, they will never accept that truth. They believe their methods are correct and working and the failure is not due to them. D is actually an old language and there are many new languages popping up like weeds... eventually D will not be so shiny and more and it will just become another weed. That is already happening actually. As many languages modify their designs to include what was great about D, D becomes less attractive. or Now there is talk of re-writing D, after the umpteenth half baked feature was introduced. We'll see, we'll see. IMO, the trouble really started when the D Foundation was set up. Instead of streamlining and stabilizing D, the whole thing turned into a closed shop with a "Hey, we are the lads" kinda attitude, and any CS theory or fashion of the day would finally be half baked into the language without a second thought. Without paying attention to users and the answer to complaints would be "we want to turn D into a functional style memory safe [...] language, that's why we had to introduce RefFancy, so eff your code!", except it still isn't and RefFancy has to be removed or replaced! Who would have guessed it would be at loggerheads with FancyRange!? or And apart from all the fancy feature madness, there's this arrogant attitude towards users. To avoid criticism my words were twisted in such an obvious and blatant way that it was just ridiculous. And what's really funny is that mistakes made by the leadership, and the leadership alone, are now being socialized as in "the community this, the community that, and this has to change!". Ah, give me a break. or See, it is not that D itself is a bad language, it is that the whole atmosphere surrounding it, how it is managed, is the problem. Some things are done well but others poorly, eventually those things that are neglected will catch up because the community seems to care not one bit about them. The cracks are getting bigger and bigger, I'm sorry you can't see them. or On one point I agree: It's time to get rid of all the wrong decisions done in the past, and simplify the language, founding it over the strong points learned from D2. It's time for D3. or The attitude "We will not cater to the mass of moron programmers" has hurt D, possibly been the one thing that is killing it. or ....
Apr 12 2019
prev sibling parent reply Suleyman <sahmi.soulaimane gmail.com> writes:
On Saturday, 13 April 2019 at 03:46:51 UTC, Walter Bright wrote:
 Something you can do to help is as I said - when you see other 
 languages mentioned, mention D. It helps a lot more than you 
 might think.
Yeah that would help but I don't see D as merely a project anymore I see D as an organization although a small one but a big community and from a business standpoint keeping your clients happy is more important than getting new clients even though a product maybe great but a company wouldn't survive on that alone.
Apr 12 2019
parent Suleyman <sahmi.soulaimane gmail.com> writes:
On Saturday, 13 April 2019 at 03:46:51 UTC, Walter Bright wrote:
 Something you can do to help is as I said - when you see other 
 languages mentioned, mention D. It helps a lot more than you 
 might think.
I think D for the size of it's organization already has a good number of users, contributors, and sponsors what's left is to make the contributors work for the users and the sponsors for the contributors and the users for the sponsors this how it keeps on rolling.
Apr 12 2019
prev sibling parent Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Saturday, 13 April 2019 at 00:25:06 UTC, Suleyman wrote:
 I think the problem with D is that it started getting a mass 
 adoption and this requires a bigger management, for example: 
 regular user polls, prioritization, concentration of efforts, 
 friendly contribution guides, time limits on issue resolutions, 
 regular health stats, coordination with sponsors, maybe even a 
 podcast especially for what would be a lightning for 
 introducing libraries and new features... etc. D is no longer a 
 niche language and this is a problem.
Great ideas!
Apr 13 2019
prev sibling parent reply Tofu Kaitlyn <katemmons0 gmail.com> writes:
On Friday, 12 April 2019 at 23:33:37 UTC, Walter Bright wrote:
 It's up to all of us whenver we see a thread like that, to 
 respond appropriately. Don't wait for someone else to.

 For example, whenever there's a post about D on reddit, someone 
 from Rust, usually Steve Blatnick, pops up and starts talking 
 about Rust.
I try to! I try to stick up for D every chance I get... but honestly at this point it is starting to get a little embarrassing to do so. I have been using D for 7 years and been trying to tell people how awesome it is... but after so long and still almost nobody is using it... it kinda makes you wonder what's the point, why do I keep trying? Im not really good enough to contribute to the compiler or make some fancy new library or something.. but I love D and want people to love it too, that's why I find it so sad D is in the place it is. When I started using D I was in my freshman year at university, back then it looked like D had a real chance of becoming a replacement for C++... now I feel like D has almost no chance compared to back then... It just feels sad
Apr 13 2019
next sibling parent reply silentwatcher <silentwatcher aol.com> writes:
On Saturday, 13 April 2019 at 08:28:37 UTC, Tofu Kaitlyn wrote:
 On Friday, 12 April 2019 at 23:33:37 UTC, Walter Bright wrote:
 It's up to all of us whenver we see a thread like that, to 
 respond appropriately. Don't wait for someone else to.

 For example, whenever there's a post about D on reddit, 
 someone from Rust, usually Steve Blatnick, pops up and starts 
 talking about Rust.
I try to! I try to stick up for D every chance I get... but honestly at this point it is starting to get a little embarrassing to do so. I have been using D for 7 years and been trying to tell people how awesome it is... but after so long and still almost nobody is using it... it kinda makes you wonder what's the point, why do I keep trying? Im not really good enough to contribute to the compiler or make some fancy new library or something.. but I love D and want people to love it too, that's why I find it so sad D is in the place it is. When I started using D I was in my freshman year at university, back then it looked like D had a real chance of becoming a replacement for C++... now I feel like D has almost no chance compared to back then... It just feels sad
you are wright, that happened to me too, only earlier. and now that you read that thread, it becomes hurtingly apparent, that the management and the compiler guru have no idea, or just don't care, on how to respond to people with valid objections. this is just sad! i guess they do it just another time as usual - just wait a little bit and let the shit float by. maybe some of the disciples will come to the rescue and tell a story on how great everything is in there niche or with there hobby. i hope somebody takes D1, strips the gc, adds templates, cleans up this mess and forgets about the rest of the bloat.
Apr 13 2019
parent Julian <julian.fondren gmail.com> writes:
On Saturday, 13 April 2019 at 08:43:06 UTC, silentwatcher wrote:
 you are wright, that happened to me too, only earlier.
 and now that you read that thread, it becomes hurtingly
 apparent, that the management and the compiler guru have no
 idea, or just don't care, on how to respond to people with
 valid objections.
Faced with non-response, you've decided that you're actually experiencing a very specific response, which is also emotionally convenient for you. This should be a red flag. You are not in the middle of a direct conversation with "management and compiler guru", nor have you pulled them onto their front doorstep to face you and the angry mob at your back. Rather, you're in a situation more like a noisy cafeteria in which you are spreading rumors or are disparaging someone just loudly enough that he can hear you from his other table. In this cafeteria-like situation, the stock dialogue that should come to mind is, not "cat got your tongue? You were talking so happily before, but now you have nothing to say, huh?!" but rather "I don't need to dignify that with a response." or "You can tell you're over the target when you start to get flak." People just don't care that much about rumors that are so off-base nobody would believe them anyway. If someone's loudly insinuating that you'd once cheated your brother in a business deal, and you have no brothers, you may as well take anyone's concerns about this insinuation when they come to you personally about them. They'll feel silly for having even paid attention to the loud guy.
 maybe some of the disciples will come to the rescue and tell a
 story on how great everything is in there niche or with there
 hobby.
Have you ever asked yourself, "hmm, I wonder if there's a huge number of people around here that are vegans, or if that's pretty niche." ? Maybe you could wonder it now, to follow along. This question is trivially answered: just go out to get food. If you're in India, half of the hotel menu will be vegan dishes. Every single restaurant you go to will have a good variety of vegan options. Not "you can blow the cheese off the salad if you want, weirdo" kinda options, but five different mushroom burgers, etc. Fancy stuff. If you're in Texas, the norm is closer to "you can blow the cheese off the salad if you want, weirdo." So here you are, looking at a blatant scarcity of GUI builders or mobile development options, and you're exclaiming: where are all the vegan options?! Isn't like 70% of the Texas vegans?! Do you all stay home to eat?? What's *wrong* with these stupid restaurants that are all ignoring what must be a *huge* vegan demand! An actually productive thing to do would be to add "desktop GUI development" and "mobile development" to a long chart of tiny niches that programming languages can be variously useful for, and you can give D a 1..10 score, with justifications. A score 11 language would have an AI chatbot that hooks your entire desktop GUI up to your application for you based on conversations with the AI about it. A score 10 language might just have an extremely good GUI builder that doesn't limit you or add extra overhead to the resulting GUI. A score 4 language might have Gtk and Qt bindings that you can use if you have independently good knowledge of Gtk or Qt, but you'll have to work a bit. The score's just a hint. The negative and positive justifications are the real value of a chart like this. Someone wanting to add a GUI to their D application might look at the chart and say, eh, I guess I'll serve a local webpage with vibe. Someone wanting to round out D's usefulness as a language might look at the chart, see that "server-side scripting" is a niche impaired by std.regex's performance, and add a GSoC task about that. Someone want to argue that D's stagnated and isn't getting more useful as a language can refer to versions of this chart over time.
Apr 13 2019
prev sibling next sibling parent reply Mike Parker <aldacron gmail.com> writes:
On Saturday, 13 April 2019 at 08:28:37 UTC, Tofu Kaitlyn wrote:

 I try to! I try to stick up for D every chance I get... but 
 honestly at this point it is starting to get a little 
 embarrassing to do so. I have been using D for 7 years and been 
 trying to tell people how awesome it is... but after so long 
 and still almost nobody is using it... it kinda makes you 
 wonder what's the point, why do I keep trying? Im not really 
 good enough to contribute to the compiler or make some fancy 
 new library or something.. but I love D and want people to love 
 it too, that's why I find it so sad D is in the place it is.

 When I started using D I was in my freshman year at university, 
 back then it looked like D had a real chance of becoming a 
 replacement for C++... now I feel like D has almost no chance 
 compared to back then...

 It just feels sad
I don't know what your definition of "almost nobody" is, but the number one library on code.dlang.org right now is vibe.d, with the following stats: 488 downloads today 3402 downloads this week 12354 downloads this month 390085 downloads total Look through the list. One of my packages, DerelictSDL2, has the following stats: 95 downloads today 521 downloads this week 2286 downloads this month 89247 downloads total From my perspective, that's plenty of people. Also, any expectation that D will be "a replacement for C++" is just misguided. No language is going to replace C++. It's an *alternative* to C++. And a good one. It's that philosophy that drives the ABI compatibility with both C and C++. We don't need D implementations of libraries that have years of development, debugging, testing and maintenance behind them when we can just interop with the existing ones. The ability to implement a new component or tool in D and be able to link with an existing codebase and libraries that the team are already familiar with is a big deal. D's doing just fine. It's been slowly and steadily growing. Not fast enough for some folks, and that's fine. We've recently started quarterly D Foundation meetings involving foundation members and representatives from D shops. At the first meeting, we had the companies everyone knows about--Dunhumby (Sociomantic), Funkwerk, WekaIO, and Symmetry. At the second meeting, we added representatives from three companies you probably haven't heard of. Our third meeting is happening at DConf. I'll be blogging about all of this very soon and will talk about what's coming out of these meetings. My advice is to get a little perspective. You have your own bubble in your own slice of the internet and your own slice of the real world. That you don't see or hear much about D in your bubble is not evidence that no one else is seeing or hearing about it. Every post I public-facing post I publish on the D blog gets shared on reddit. Some generate discussions, some do not. But there's been a big difference since I first started managing the blog. Initially, every post I shared attracted trolls eager to bash D on principle and most posts were lucky to get over a 60% upvote rate. Now, the trolls rarely appear, the upvote rate tends to hover between 70-90%, and the total number of upvotes often goes over 50 (I used to think 30 was a lucky day). The most recent, a highlight of DPP, got 75 total votes and a 86% upvote rate: https://www.reddit.com/r/programming/comments/bas2my/dpp_include_c_and_c_headers_directly_in_your_d/ That post has generated just over 1,000 views in the 5 days since it was published. The post on memoization in D that I published at the end of March only got 32 upvotes at reddit and a 76% upvote rate (and again, no trolls bashing it in the reddit thread), but it's had just shy of 15,000 page views: https://www.reddit.com/r/programming/comments/b7augl/memoization_in_the_d_programming_language/ My point is that, yes, people are hearing about D and, from my perspective in my bubble, the positive messages and curiosity are outweighing the negativity. People don't have to like D. That's fine. I respect some folks are unhappy and now and again will vocally express their critical opinions. That's a fact of life. But there are plenty of people who are happy (or at least satisfied) and who are using it both commercially and personally. Our focus needs to be on retaining them. We will lose some along the way, because not everyone will agree with every priority or every decision, or with the management process, or whatever. But improvements are happening, will continue to happen, and the language will be better for it. It's already better today than it was 5 years ago, or even 5 years before that. As it continues to improve, it will appeal to more people and some of them will become contributors to help make it even better. And it may sound like a broken record, but we always need contributors. The bigger we get, the more we need. And there are never enough. We've got a new initative that has come out of the quarterly meetings that is one step to address that (I'm not ready to announce it just yet) and the ongoing fundraising campaigns are another (and note that donations to the Pull Request Manager campaign have slowed: https://www.flipcause.com/secure/cause_pdetails/NDUwNTY=). D does not have the backing of a cash-laden organization, as someone pointed out earlier, so like it or not, it is a language where there's still a lot of DIY. Anyone expecting fully featured IDEs, native graphics libs, parity with languages like Rust, criticisms to be made about management, but that isn't one of them. Resources, resources, resources. One must either contribute, accept the status quo, or move on. Meanwhile, those who are contributing continue to do so, some for free some for compensation, but all because they accept that if they don't do it, it won't get done. I've been following D since 2003 and using it since 2004. When I look back over the stretch of time, I can't help but see D as a success. I'm doing what I can to make it more so.
Apr 13 2019
next sibling parent silentwatcher <silentwatcher aol.com> writes:
On Saturday, 13 April 2019 at 09:16:09 UTC, Mike Parker wrote:
 On Saturday, 13 April 2019 at 08:28:37 UTC, Tofu Kaitlyn wrote:
yes you are living in your bubble and to this thread there is more than just discontent. this is just sad! it's the same as usual - just wait a little bit and let the shit float by. then - learn/change nothing.
Apr 13 2019
prev sibling parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
Thanks Mike for writing. I have one addendum to this:

 And it may sound like a broken record, but we always need
 contributors. The bigger we get, the more we need. And there are
 never enough.
Closely related to the dearth of great contributors is the implication that we're blocking access of others to high-impact and leadership roles. Let me state for the record that I am not holding onto any seat, that I had to carry some roles simply by default because nobody else would, and that there's many more than two seats to start with, most of which are empty because there's nobody able and willing to take them. The folks whom I invited privately declined, thankfully save for Mike. Regarding some posters' discontent over poor performance of the leadership/management. Speaking only of myself, let me state for the record that I hold absolutely no illusion of my performance as a leader in this community. Without being dramatic I reckon I'm unfit for leadership. (Most certainly not for lack of trying, but that doesn't matter.) An A leader should get A+ people to follow. We don't have enough of those.
Apr 13 2019
next sibling parent reply Nierjerson <Nierjerson somewhere.com> writes:
On Saturday, 13 April 2019 at 11:20:07 UTC, Andrei Alexandrescu 
wrote:
 Thanks Mike for writing. I have one addendum to this:

 And it may sound like a broken record, but we always need
 contributors. The bigger we get, the more we need. And there 
 are
 never enough.
Closely related to the dearth of great contributors is the implication that we're blocking access of others to high-impact and leadership roles. Let me state for the record that I am not holding onto any seat, that I had to carry some roles simply by default because nobody else would, and that there's many more than two seats to start with, most of which are empty because there's nobody able and willing to take them. The folks whom I invited privately declined, thankfully save for Mike. Regarding some posters' discontent over poor performance of the leadership/management. Speaking only of myself, let me state for the record that I hold absolutely no illusion of my performance as a leader in this community. Without being dramatic I reckon I'm unfit for leadership. (Most certainly not for lack of trying, but that doesn't matter.) An A leader should get A+ people to follow. We don't have enough of those.
I do not think think anyone is criticizing you or Walter personally or your capabilities in what you do. EXCEPT: You guys have to figure out how to take D to the next stage of growth. You guys are the leaders and so only you can do it. No one else can step in and say "This is how we are going to make it happen". I believe you guys are talented in certain ways but those ways are not in ways that are large complex project management. You guys are too nice and laid back for that. There has to be someone willing to put their neck on the line and make good and hard decisions to fix the cracks in D rather than ignore them. You guys are programmers first and foremost. Have you guys actually ever ran any large projects, say, of 10k people or more? What about 1k? I doubt this simply because you are programmers and such jobs would not involve programming. For example, the CEO of Nvidia doesn't sit around programming all day long as his job. It's not that I don't think you guys are intelligent enough, I believe(I do not know if it is true) that you guys don't really have any any experience in running a very large successful project where if you fail the project fails and it's your ass. The kinda where it is all about dealing with people(unpredictable) as opposed to code(predictable). So, in no way am I criticizing you as a person or trying to make you feel incapable, I'm simply trying to get you to recognize your limitations and for you to think about them enough as to maybe figure out how to overcome them. I don't know enough about how you guys function to even begin to dish out fault. My main point is to try to bring awareness. I think you are already somewhat aware, so what I have said so far might not be useful. But there has to be a floor plan, laid out exactly and "everyone" has to agree that it is a good floor plan. Then that floor plan has to be stuck to. Imagine building a house where 1. The floor plan sucks. 2. It's always changing. It's a doomed project in almost all cases. The more complex the design the more failure points. You guys really need to find someone that knows enough about D, knows enough about manging large projects(you could start smaller but the more experience the better), someone that has their neck on the line, someone that will do the required work(since a whole team will not exist to delegate it), and someone that can dedicate full time. That is, you need someone who will essentially take the steering wheel and win the race. You could try it yourself, but that would require you to change your whole mentality and become a "business man". You'll have to start taking courses in leadership, project management, learn all kinds of stuff you never had a clue about and not accept failure as an option(which might require long days, very tough decisions, etc...). Basically you would have to change careers in some sense. I really believe you guys just don't know what to do but you don't realize it. It's not because you are dumb but you simply do not have the kinda of experience that provides one with such knowledge. You have ideas and beliefs but that is not the same as real world experience of the day in and day out that builds up 6th senses and intuitive knowledge, tricks, networking, habits, etc. It's kinda hard to explain, it is just a feeling I had. It is similar to how I have done certain things in my life where I thought I was capable and was making progress then I'd see a YT video of some "3yo" doing what I do. Digging deeper I realize that my conceptions about how I thought things worked were wrong(or faulty/weak). I didn't realize that other people did it so differently and then I realized that is why they were better... not because they were necessarily more intelligent or had more money or whatever but because of their experiences that helped them progress and not hit every speed bump. But always what I realized is that it was more complex and more work than I initially thought. You have went through these things too, but you don't pay attention to them much. How many years of your life have you spent in programming? That is why you are good at it! How many years have you spent managing companies or large groups of people? Changes are you manage people like you program. That is, you view the world in a particular way that may or may not be conducive to solving certain problems. It is not a fault of you, it is a fault of all humans(it's a fault due to how the universe works and it's probably no fault at all but just how it works). My suggestions is this: 1. Spend 5+ hours seriously thinking about the long term goal of D. What you guys want it to become. Dream a little, raise your expectations, don't worry about the likelihood of achieving them too much. [It's always better to lose to a higher ranked player than win to a lower ranked player] Also one must be a little predictive/adaptive since the time the dream becomes realized things will change. This though should involve some concrete and useful things like: (EX) a. D is the a major competitor b. D is an efficient programming language that satisfies many users requirements. c. D has a large user base d. D has a well thought out and consistent structure, easy to maintain. e. D is just pure fun to program in. There really are no downsides for most people. etc... 2. Then figure out for each of those a little more details and realities behind them. for a, it might involve figure out some approximate numbers and requirements that a major competitor has. E.g., how many users, type of users, feature set, etc... 3. Then decide if you are willing to do all the work to get this going. You guys have to lay down the first few layers of the pyramid(well, D already exists so you have some layers to use). If not then you have to figure out how to get others to help you in a constructive way. You might need to seek out people who have been successful in large projects and learn from them(not just people who carry the torch but the ones who built it). 4. A tentative floor plan then must be created. This is the general outline that gives structure to the dream. It is a huge graph/chart/map that shows one the forest. 5. Then project management comes in to play to find the "optimal" solution to minimize the time required to complete the project. To deal with revisoning, versioning, issues, work distribution, hiccups, road blocks, etc... 6. Then just run the program. Yes, it is a program. To accomplish anything is a program. But without the source to the program and the compiler one can't get anywhere. The source to the program here is the planning. The compiler is the management team. All the details are filled in at "runtime" such as who builds that part of the wall, who corrects that mistake, etc. After all, even with large computer programmers, there is almost always some type of divide and conquer approach, it is no different, it's just the machine is different. And I'm not good at project management so even what I have said probably wouldn't be effective. This is why you guys need an expert, and someone that will invest the work so these things can get off. You might pay them based on performance/progress but you will still have to participate and understand things enough to keep them legit and to drive them. Without some type of conscious effort in this area, D will stagnate almost surely. There is really no way to get around that. These things are not impossible to do. The energy is there(there are billions of people on this planet who regularly give up their time for other peoples causes on a daily basis), it just has too be focused. Imagine this, if all the time and energy that has been put in D from the get go by everyone who has ever done anything for D was focused 100% in contributing in the perfect way for D. D would be the top programming language. One can say this about most languages too. So much energy is wasted, like a typical light bulb, which actually uses more energy than most lasers. D just needs focus. You and Walter may be comfortable with it being your golf game, but most people are not because they don't want to play golf. Their time is real and it is an investment for them, they want a return. This is why I have stopped using D for anything serious, because I have concluded that it is not a good investment for me. I'm not alone in this of course and it is not an indicator of your abilities(it might be entirely Walters ;) Or something else). I do like D enough though to continue messing around with it here and there, I guess it has become my golf game in some sense ;/
Apr 13 2019
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/13/2019 6:08 AM, Nierjerson wrote:
 I do not think think anyone is criticizing you or Walter personally or your 
 capabilities in what you do. EXCEPT: You guys have to figure out how to take D 
 to the next stage of growth. You guys are the leaders and so only you can do
it. 
 No one else can step in and say "This is how we are going to make it happen".
Actually, yes they can. There's a lot that goes on that I have no involvement in, people just stepped up and did it. For example, gdc ldc bugzilla autotester dub VisualD Dfeed (the forum software) the website server What doesn't work is giving Andrei & I long lists of action items. I get them every day. You want something to happen, step up and take a role and make it happen.
Apr 13 2019
parent reply Nierjerson <Nierjerson somewhere.com> writes:
On Saturday, 13 April 2019 at 20:38:04 UTC, Walter Bright wrote:
 On 4/13/2019 6:08 AM, Nierjerson wrote:
 I do not think think anyone is criticizing you or Walter 
 personally or your capabilities in what you do. EXCEPT: You 
 guys have to figure out how to take D to the next stage of 
 growth. You guys are the leaders and so only you can do it. No 
 one else can step in and say "This is how we are going to make 
 it happen".
Actually, yes they can. There's a lot that goes on that I have no involvement in, people just stepped up and did it. For example, gdc ldc bugzilla autotester dub VisualD Dfeed (the forum software) the website server What doesn't work is giving Andrei & I long lists of action items. I get them every day.
The problem is you don't understand and you think you do: 1. We are not talking about individuals doing things. We are talking about those things being done in a consistent and meaningful way rather than ad hock. What happens when Rainer Schultz gives up on D? You realize he took over Visual D himself from someone that gave up. What happens when those people decide to move on, die, get preoccupied, have less time, etc? You are always expecting people to do work yet and some do, but to pretend that it has any longevity is being naive. Visual D development has somewhat stalled. RS still works on it here and there but it is pretty much what it is. It has limitations and issues. It is not commercial and to pretend that it is the solution for the IDE platform on windows is nonsense. It is the only one that is usable to any useful degree. It works, surprisingly well, but not well enough for most businesses to invest in D. I'm not saying to downplay these things, I'm simply saying 1. They are not enough. and 2. They are not coherent enough with D as a whole. 2. D needs structure in it's overall design. It's far more than just a compiler. A compiler by itself is about useless as a new born baby. The tools, libraries, the docs, the community, etc are all required for wide acceptance. But there has to be some underlying glue that binds it all together. Just having everyone create the these things on their own is not enough. It ends up with a rats nest of problems. Everyone does their things different ways, no one agree's, things don't easily connect up, etc. It is quite amazing D has worked so well with this method, it is a testament to the people who contribute to D, not the process itself. Imagine if all these people that have contributed to do did it in a structured in unified way. No redundancy, waste, abuse... what would D be like? Your approach is too lackadaisical *if* your goal is wide acceptance[I realize that is a trigger word here because people think it means acceptance by the mass of moronic programmers]. It works well for some things but poorly for others. All I am talking about is having a plan and project management. Something like: "We have these N things we want done 100%, we will sort and prioritize these M things and work on them this way until they are accomplish. We will do them to the best of our abilities." [More than this, but trying to express an idea]
 You want something to happen, step up and take a role and make 
 it happen.
Ok, I'm going to step up and take a role, right here right now: 1. You need to find someone who will create two things: a) a method for people to contribute in an easy way. A website would work, you have people who can create websites(they have done it) so task them with creating a new web sight, say dlang.org\ProjectManagement. The site is designed to be coordinate two things: i. People who have a common desire for improvement on some part of D. It could be a library, a tool, a patch, etc. ii. The core D team's projects for D, such as rewriting phobos or D3 or an IDE, or whatever it is you guys decide is to be done. You state "We are doing this, here is how you can help". The site is a meeting place, a way to formally work together. Not email, not forums. Sorta like bugzilla, github, forums, etc all combined. It doesn't have to be over the top but needs a unified and singular place to interact with in evolving D. What does this do? It provides a formality for people to take it serious, specially those on the outside. It says "We are serious bout getting things done around here so much that we take make it efficient to get things done". It is the difference from "work at home" and having an building where business is done. Just the environment itself makes people think differently. You guys could talk about specifics. I'm just saying that some efficient, formal, and meaningful way to coordinate projects and people is necessary. Why? Because if it exists it will also increase the success rate of good projects. It might require you guys to spend a few weeks or months figure out the details. I think getting many peoples desires on such a site would be best. No point in me giving too many of my thoughts because it is a task for you to do to get the ball rolling. What I am saying is that having a *place* to optimize work, scheduling, and tasking will turbo charge D, if it is done right. I will say this: Suppose I want to contribute to a part of D that doesn't exist or up to my standards, say some library. By having a site where can go to, sorta like dub for libs, but search for the thing, say it is a graphics library, and I can see the projects, there should be just a few as these are projects sanctioned by D to eventually be official, then I can contribute to them. You can say this is what dub and git hub provide... and in some way they do. But it's not the same. It's too fractured and too independent/individual. The site could link to github but it has to coordinate people(the energy/work) and harness it. It also lets you guys organize it. If, say some group of guys want to write an audio library then you will have to take a look at it. This also requires a standardization of coding style which is done well. Ideally there would be the top programmers who monitor the code to make suggestions about issues such as longevity, style, generality, optimizations, etc. You guys to to control the overall process while the worker bee's do the grunt work of writing code. With such a site you should be able to see an overall digraph of all the relationships and also dig in to the project management side, such as conflicts, time spent, who's doing what, etc. One could could think of this as a sort of D forum on steroids(it could have a forum component that is integrated). Wish such a site too, one could create fiat currency... you know how people love their fake gold coins. [I'm not suggesting that specifically but there could be a sort of reward system for contributing to projects or competitions, etc] b) An overarching plan for D, say, for the next 10 years. This plan is then filled in with details. It should be rather exhaustive. It should cover ALL things anyone could want out of D. No expense should be spared, meaning there should be no worries about going overboard. All the fat can be trimmed. The idea here is to provide long term goals that definitely will make D better. It doesn't matter if you think it is worthless, it is just if magically it existed for D it would be better then it is added. For example, Let's imagine D should have it's own OS written in D. This is a feasible thing, it could potentially be better than any other OS out there. Of course, this is not something practical for D to focus on, but it is something that if one could magically have would be good for D. This is sort of brainstorming for things that will help D take over the world. One then sorts, rehashes, prioritizes, and creates a smaller list of things. One builds a hierarchy. All things are relevant but it is narrowing down things to a manageable scheme. With the project management site, though, if some people want to build an OS for D then they could add it to the site, and move in that direction. They are busy building such a thing and so, eventually, in theory, it will get done. But it's officially part of D and that alone provides some cohesion. Regardless of the specifics, these two options are meant to provide two things: An overall plan that people can understand and a place where the plan turns in to a reality. 2. You and your team need to sit down and rather than just gab about things seriously figure out what needs to be done, not for specific D things(e.g., some code, library, language feature, etc) but the management side. Each of you needs to have an honest conversation with yourself and each other to figure out where everyone stands, everyones desires, everyones intentions, and what each one is willing to do. If certain gaps in capabilities are missing then you need to seek out those people that will fill those gaps and fit all together correctly. There has to be balance to such a team. If everyone thinks the same then there is no dissenting views and this causes problems. For example, if you have N people and they all think exactly the same way(identical copies) then there really is only 1 person. If that 1 person can't solve a problem then N of these people can't solve the problem no matter how large N is. And this is mathematical fact that proves similarity of thinking is not effective for difficult problems(it's great for problems that they all know how to solve). Basically you guys need to find some people that fit your team but balance it out. Someone you can trust and will listen to but doesn't think just like you do. You have to be able to argue about stuff and see who's right or to get a little frustrated. It makes everyone grow... but it doesn't have to be hateful. If everyone has the same desire then it will actually be effective and sort itself out. 3. The overall plan has to have a singular unified purpose. It is the focal point of what this is all about. It is something clear that everyone has in their mind. If you look at a great painting there is almost always a singular concept that presents to ones mind the moment one see's it. This concept says "This is what the painting is about"(it is true that people will interpret it different, but there is always a concept, it may be "ambiguous" in some sense but not in the persons mind). It's ultimately what ties everything together in a nice package and fills in the cracks when they form. Without it one is relying on luck and/or passion/determination. These work for small things but rarely for large projects involving many people(since most people won't have much luck or passion to make it happen and they will also destroy that of others). --- So, you and your team need to sit down and hash these things out. You don't have to listen to what I said, maybe when you sit down and try to figure all this out you'll find a better solution. It is not about programming, but about management. No real programming topics are involved. You might figure out a way to make it worth while, could take a vacation for it, or after it. Might setup something special to make it happen. I don't know the specifics. But what I do know is that if you guys continue your approach the same way it is, the same results will occur almost surely and it is easily predictable the long term outcome. Also, keep in mind that it doesn't mean you have to do a lot of hard work. It means that you simply have to structure things to get other people to do the hard work for you. (this is what all business is and it is a form of slavery in that it leverages other people's ability to supply energy in to the system for the purpose of a cause they generally are not ultimately interested in. You are luck that there are so many people willing to contribute to D, you might as well maximize their efforts and leverage it as much as you can). I do hope you can figure this out. I do like D and think you did a great job in many ways. The thing that is going to make D fail though is not the great things you did but the poor things you did(= the great things you didn't do). D is like a candle flame in the world and many of us want to see it was a volcano. That may not be your desire though but remember, Even though D is your child, many others helped raise it.
Apr 13 2019
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/13/2019 3:12 PM, Nierjerson wrote:
 Ok, I'm going to step up and take a role, right here right now:

 1. You need to find someone who will create two things:
 No point in me giving too many of my thoughts because it is a task for you to
do
 2. You and your team need to
 Basically you guys need to
 So, you and your team need to
 It means that you simply have to structure things
 I do hope you can figure this out.
This is not stepping up, it's giving me a list of action items. I have an action item for you: * Find something great on your list of action items and do it! --- Allow me to explain a couple things. This is not a business. There's some paid work going on, but not a whole lot because there isn't a lot of funding. A good compiler engineer would get $500,000/yr. We just don't have a lot of money. This means relying on volunteers. The fun thing about volunteers is you can't tell them what to do. A normal occurrence is people ask me what to work on. I present a list A, B, C, D, and the person then does H. Why? Because H interests them. You might think, what a mess. In many ways that's true. On the other hand, working on D is a MARVELOUS opportunity for anyone who wants to jumpstart their career. For example, take Iain Buclaw. He single-handedly, doggedly, and indefatigably improved GDC (which had been abandoned) to the point where it was accepted by and officially incorporated into the Gnu Compiler Collection. This is a monumental, career-making achievement. It's the only thing he ever needs to write on his resume. He's a made man. Many D contributors have leveraged their work on D into high paying jobs that were otherwise closed to them. I'm very proud of these fellows and their achievements. I'm honored that D was the route to their success. The opportunity is here with D for anyone else who wants to learn and show the world what they can do.
Apr 13 2019
parent Nierjerson <Nierjerson somewhere.com> writes:
On Sunday, 14 April 2019 at 00:00:46 UTC, Walter Bright wrote:
 On 4/13/2019 3:12 PM, Nierjerson wrote:
 Ok, I'm going to step up and take a role, right here right
now:
 1. You need to find someone who will create two things:
 No point in me giving too many of my thoughts because it is a
task for you to do
 2. You and your team need to
 Basically you guys need to
 So, you and your team need to
 It means that you simply have to structure things
 I do hope you can figure this out.
This is not stepping up, it's giving me a list of action items. I have an action item for you: * Find something great on your list of action items and do it! --- Allow me to explain a couple things. This is not a business. There's some paid work going on, but not a whole lot because there isn't a lot of funding. A good compiler engineer would get $500,000/yr. We just don't have a lot of money.
I realize this, and this is why it is even more prudent to do things as best as possible. For example, if you have a yugo and you are racing F1's you better optimize all variables in all ways to stand a chance. What you have stated is an excuse. Money helps but you don't have it, so do you just give up? Because that is what you are saying whether you realize it or not. I'm not blaming you or D's management in any way. I know it is an uphill battle. What I'm trying to do here is make you realize that the way your climbing the mounting is a hard route. You need other people that you trust and will commit and bring in to your inner sanctum. Only you can make that decision. I've noticed H. S. Teoh mention wanting to fork D. I believe he is quite an intelligent person and seems to have alternative views that could provide more of a balance for you guys. You NEED someone that thinks differently. You might need other people. But ultimately you have to realize it would be beneficial to broaden your group(is it just you and Andre?) and that you have to find the right people. You have to also realize you have to make changes yourself. You must adapt with the times. If you still manage D with the same mindset you did 10 years ago then something is wrong. This is why you need other people to help you. It is IMPOSSIBLE for you to do what is needed by yourself or even you and Andre! If you think it is then you have already failed. I'm not saying that progress won't be made, I'm saying that it won't be enough[I could be wrong, but I'm 99.99% likely too be right]. I don't want to see D go down the tubes and I don't want to see D stagnate. It is really the language I enjoy programming in the most, but it is also the language I get frustrated with the most. I like to work on weaknesses, not strength. Anyone can work on their strengths, that's the easy job, but we are held down by our weaknesses and weaknesses actually are most beneficial to build(because of diminishing returns and the way knowledge and experience work together(it's O(n!)).
 This means relying on volunteers. The fun thing about 
 volunteers is you can't tell them what to do. A normal 
 occurrence is people ask me what to work on. I present a list 
 A, B, C, D, and the person then does H. Why? Because H 
 interests them.
I know, but it is a double edge sword. There has to be a balance! Remember, if a volunteer wants to do something on his own he can. You shouldn't stop that, it is tyrannical. But some people need and want structure. The best way is to provide both paths. If someone wants to climb the steep cliff they can, others who want the guided tour need that. If you limit any path then you are selecting only those people who will take it. D suffers from a lack organized structure. If it had too much structure I would be saying the opposite of what I am saying. I'd be "You guys are too dictatorial, you guys need to chill and relax!".
 You might think, what a mess. In many ways that's true. On the 
 other hand, working on D is a MARVELOUS opportunity for anyone 
 who wants to jumpstart their career.
D works well in many ways, I'm not saying it is a total mess... not in the least. What I'm saying is simply this: The D community almost only works on it's strengths... specific feature sets that the most dedicated want to work on and they neglect those things they are not interested in. This is great for them because, guess what, they are happy. They say things like "Well, D works for me" or "These businesses use D quite successfully". I've used D successfully... if I only judge it on those things that it is successfully used at. The problem with that is that the things D does poorly in are never developed to any high level and so it never attracts other people who need those things. You have to realize because of the way D has been run in the past has setup what it is today. Basically it is self-motivated people who are willing to work on their own for their own cause. This has build up a hodge podge of disorganized libraries, all kinds of problems... Over time it gets worse and requires more effort to maintain. For example, if D depreciates certain features then those libraries general bit rot and all that effort is ultimately wasted. Of course, the strengths of D are not so much effected.
 For example, take Iain Buclaw. He single-handedly, doggedly, 
 and indefatigably improved GDC (which had been abandoned) to 
 the point where it was accepted by and officially incorporated 
 into the Gnu Compiler Collection. This is a monumental, 
 career-making achievement. It's the only thing he ever needs to 
 write on his resume. He's a made man.
Yes, and it is quite amazing that people dedicate their precious time... but it is still not the way to go. You are relying on people to build D for you... what happens when they stop? Even if they trickle in over time you have a certain rate of progression of growth that you think will continue building D: In your mind you see D's growth as D(t) = m*t where m is the rate of growth which depends on volunteers contributing to D(which may change over time but we will use averages). But you fail to take in to account other variables: D(t) = m*t - d*t - e*t d is decay rate. It is a measure of bit rot that occurs that hurts D. e is an environmental cost. Such as other compilers that compete with d(such as taking volunteers). In fact the equation is far more complicated but you are only looking at the positive side(the things that D was well and keeps it going). Eventually the costs will outweigh the benefits and D will then end bit rotting itself(it will just end up another compiler in the compiler grave yard, where eventually all compilers end up, even C++ will be there one day, but who wants to die young?).
 Many D contributors have leveraged their work on D into high 
 paying jobs that were otherwise closed to them.
I'm not disputing anything like this. But you are only looking at the positives. Your view is warped. You MUST look at the negatives, no matter how painful it is. Without looking at the negatives they will eventually overtake the positives and then you will be forced to look at them(well, you might die before they come in too play but they will occur none the less).
 I'm very proud of these fellows and their achievements. I'm 
 honored that D was the route to their success. The opportunity 
 is here with D for anyone else who wants to learn and show the 
 world what they can do.
No one is trying to knock anything bad about D, what you have done, your intelligence, anyone else's intelligence, anyones contributions, all the hard work, all the dedication, or anything else that has made D what it is. This discussion ultimately has nothing to do with D's achievements. They HAVE to be ignored, at least on some level, so one can see the negatives. And without seeing the negatives there is no balanced view and D will eventually reach it's limits. You have to realize that what is being said is not a specific statement about D, it is a general statement about all things(e.g., you are thinking in terms of functions and I'm thinking in terms of templates, so to speak, meaning my statements are more applicable to a wider class of things). I can say what I have said about C++ too, or anything else. You might say then what is the point? The point is that the better one understands these things the better one can control the various factors for specific outcomes. 1. You agree that all things reach diminishing returns? Eventually whatever grows as has a growth curve and it must(in practical sense, or maybe just average) end up diminishing? Why? Because growth requires resources and all resources are limited(even if astronomical, they are still limited = finite). 2. All things have other factors that control their growth, so many that they are effectively uncountable. D's progress, like all things, is some N dimensional function that depends on t and many other things. [meaning that if we know all the data we could model it using an N dimensional function rather precisely] Such functions have orders of growth and decay. Big O notation takes such things in to account. You know sorting routines have such measures of growth. But you realize that D is just some big sort routine that is very complicated? It takes bits and sorts them in to a new array giving some complex function(the grammar, the machine language specification, etc). It's so complex that you have probably even never tried to simplify it in such a way... but make no mistake, it is still just an abstract machine that has the same types of mathematical abstractions in it. The point is then that there are negative components and if you ignore them then they will catch up and then take over. You are ignoring most of those components. You should try to find the largest ones and reduce their effect. See, if we were talking about an optimization problem, say a cpu task scheduler, you would have no problem understanding what I'm talking about. You'd say agree and say "Yes, if we want to maximize throughput we need to minimize task switching(it is costly) so we should run the most important tasks first... but we can't starve the smaller tasks completely." and we would come up with some code that would try to optimize the scheduling of the tasks[which is project management too]. You know all about that kinda stuff but you fail to realize it also exists(in a disguised form) in D's own management, which again, is just a program(all things in life are programs... it's no coincidence that transistors and neurons both are switches or that people use the same term for many disparate things. It's because there is a much deeper connection between all things). Since you, I believe, do understand Big O/Little O notation and theory, I'll simplify the whole discussion to this: D = o(t) - O(t) o(t) is the lower bound of D's growth, it can't do any worse than this. O(t) is the upper bound on D's decay, it can't do any better than this. You are only looking at o(t), I'm trying to get you to look at O(t) because you are effectively ignoring it(seems to be what most humans do). You are looking at the positive side(o(t)) and ignoring the negative side(O(t)). But since O(t) is not 0, there is the risk that D's growth will end up "negative" dead. (The universe seems too dictate that O(t) always overtakes o(t) due to finite resources/diminishing returns/bit rot/etc). Now, if we want to maximize D's growth, we can't just look at o(t), we must also try to deal with O(t). You have focused so much on o(t) and ignored almost all O(t) that O(t) is the "low hanging fruit". It's got so many terms in it that are large and can be rather easily dealt with(diminishing returns haven't kicked in) that if you realized this and decided to deal with them(as unpleasant as they seem) that you could give a huge boost to the overall growth of D. But you keep focusing on o(t). If this was an algorithm, which it is ultimately, your algorithm will be doomed in the long run. Not because of what you have done with o(t) but because of what you haven't done with O(t). I'm in no way criticizing you for you and others accomplishments on o(t) but I am criticizing you on your neglect of O(t). My statements are purely based in logic, mathematics and reality. Meaning they are mathematical models(simplifications of reality) that are applicable to all things that can be modeled mathematically(which seems to be almost everything in the universe). It's just like how much things can be represented by a differential equation, or how most things can use computers to solve their problems(which is why compilers are so important since they let us more effectively write programs that solve problems). The balance is to look at both o(t) and O(t). Most people look at only one and ignore the other as if it didn't exist[It might be a left/right brain thing]. If you spent the next month or two just hard core analyzing O(t) you'd probably do more for D than in the last 5 years. You'll see things you never thought existed(because they didn't in your mind since you never saw them). You just have to drop you preconceived notions and biases that have formed. You have conditioned yourself to look at o(t). You are, in fact, the best person to do this because you know far more about D overall and generally there is actually some type of interdependence between o and O. Of course, having others to help you break out of the mental box you exist in will speed up the process(it's not an attack, we all exist in our own mental boxes, but expanding our boxes almost always is a good thing). I'll give you a quick example that may or may not mean anything too you. I've always been right handed and have heavily used it for all things so much so that certain things that require the left hand usually slow me down considerably. Such as typing. I am very fast with my right hand, and my left faster than most peoples right hand... but my left hand is not at all at the same level as my right. I decided to try to balance this by forcing myself to use my left hand for things. I now can use it for many different things such as for a mouse and various tooling(soldering iron, etc) and it feels comfortable(not quite at the same level as the right but it's no longer a determent and if I ever lost my right hand it would be quite easy for me to adapt). This thing though is much deeper because our brains are wired in specific ways to our body. By forcing myself to use my left hand I have actually rewired my brain to some degree in a positive way(more balanced). I even use two mice because sometimes it's much quicker to grab one with the left hand(which I think is because computer input is rather poorly understood. Imagine having a brain harness where you just think of what you want and it happens... keyboards and mice are just middle men that slow this process down). Now, 5 years ago I would have never thought about such things because I was rather myopic. Thinking that how I thought about things was the way they existed. I have learned through that, that my thinking is limited by me and has little congruence with the real world. The left hand/right hand is just an example. One must always try too find the other side to things, it actually benefits everything. It's hard to understand this until you have done it enough to see how it works(like all things it is experiential). But it is very powerful. I'm trying to get you to at least take a leap of faith here you should do the same type of thing with D[ultimately in everything you do]. At worst you would have wasted some of your time, at best you might completely change your existence or D's progression. I can't tell you specifics in much of a meaningful way since, if you remember, I'm talking more in general terms. You have to fill in those specific details and then analyze the patterns objectively(taking in to account both sides).
Apr 14 2019
prev sibling next sibling parent Chris <wendlec tcd.ie> writes:
On Saturday, 13 April 2019 at 11:20:07 UTC, Andrei Alexandrescu 
wrote:
 Closely related to the dearth of great contributors is the 
 implication that we're blocking access of others to high-impact 
 and leadership roles. Let me state for the record that I am not 
 holding onto any seat, that I had to carry some roles simply by 
 default because nobody else would, and that there's many more 
 than two seats to start with, most of which are empty because 
 there's nobody able and willing to take them. The folks whom I 
 invited privately declined, thankfully save for Mike.

 Regarding some posters' discontent over poor performance of the 
 leadership/management. Speaking only of myself, let me state 
 for the record that I hold absolutely no illusion of my 
 performance as a leader in this community. Without being 
 dramatic I reckon I'm unfit for leadership. (Most certainly not 
 for lack of trying, but that doesn't matter.) An A leader 
 should get A+ people to follow. We don't have enough of those.
I said a few months ago that one cannot be leader and developer at the same time, because one will inevitably under-perform in one of the two departments, or in both. And unless you are supernaturally disciplined your personal preferences will creep in. The impression I have is that you and Walter are interested in one particular aspect that may be interesting and rewarding to work on and this aspect becomes top priority - just because you *can*. You are the leaders after all, nobody can tell you what to do. And the aspect you're interested in may change according to the latest discussions in CS, if Go or Rust has it, D needs it immediately. How often have I heard sentences like "This is the future of programming! This is the way to go!"? But this approach has created a solid mess. Half baked features. You use the actual D release as a playground instead of having a D Lab or D Experimental implementation. With something like that a lot of pitfalls could have been avoided and users wouldn't feel like guinea pigs. Often less attractive features are not only neglected but regarded as beneath D as they belong to the realms of "mediocre coders who use Java, cough cough". But in the real world programmers need to get things done and competitors don't sleep. If a customer wants an app you cannot tell him / her that the language you're using is "too good" for that. When I look at new languages, what are the features I look for? C interop, cross platform and *ease of use*. Many new languages are designed with all-round usefulness in mind and the devs try to make it as easy as possible for users. This is very important as it boosts productivity. Also, programmers just don't want to go through all the hassle of million compiler flags, complicated set ups etc. Not because they're stupid, but because it's the year 2019 and what matters is the code and the product. Why would I use two stones to light a fire when I can just use a lighter? One thing regarding the number of downloads. That doesn't tell you much. First, I often download languages out of curiosity, but do I use them? No. Second, I've often downloaded libs etc. in D but once they break, I have to stop using them. I have a graveyard on my machine. So the number of downloads does not necessarily tell you whether the language / library is actually being used. It's too high a risk to use D in the real world. Imagine how a user feels when s/he reads on the forum that there will be yet another change that might break old code or that D / Phobos will now be rewritten. It's just mad.
Apr 13 2019
prev sibling parent matheus <m g.com> writes:
On Saturday, 13 April 2019 at 11:20:07 UTC, Andrei Alexandrescu 
wrote:
 ...Speaking only of myself, let me state for the record that I 
 hold absolutely no illusion of my performance as a leader in 
 this community. Without being dramatic I reckon I'm unfit for 
 leadership. (Most certainly not for lack of trying, but that 
 doesn't matter.) An A leader should get A+ people to follow. We 
 don't have enough of those.
I hope you don't mind saying this here, but one thing I saw for awhile was lack of your presence here (Forums), which on the other hand I think it changed (for good) over the past month. To be honest for some time I wondered if you were still related to D. Maybe around this time you were doing great things behind the scenes, but I think the top (Walter and You) should be engaged with community more and more to show everyone that you're really serious. Like for example Linus Torvalds, even when he was bashing some people on LKML he was there for good or bad. Besides that a few days ago I created a topic thanking this community for their work in this language. Matheus.
Apr 13 2019
prev sibling parent "Nick Sabalausky (Abscissa)" <SeeWebsiteToContactMe semitwist.com> writes:
On 4/13/19 4:28 AM, Tofu Kaitlyn wrote:
 
 I try to! I try to stick up for D every chance I get... but honestly at 
 this point it is starting to get a little embarrassing to do so. I have 
 been using D for 7 years and been trying to tell people how awesome it 
 is... but after so long and still almost nobody is using it... it kinda 
 makes you wonder what's the point, why do I keep trying? Im not really 
 good enough to contribute to the compiler or make some fancy new library 
 or something.. but I love D and want people to love it too, that's why I 
 find it so sad D is in the place it is.
 
 When I started using D I was in my freshman year at university, back 
 then it looked like D had a real chance of becoming a replacement for 
 C++... now I feel like D has almost no chance compared to back then...
 
 It just feels sad
Welcome to the club/support group! You can grab your orientation booklet "So you've found yourself loving a fringe language, you're not alone!" on the table over there, refreshments are to your right, grab a chair, the speaker will start momentarily, afterwords there will be more meet & greet so just relax and mingle, yea. Nice ta meetcha!
Apr 18 2019
prev sibling next sibling parent Laeeth Isharc <laeeth kaleidic.io> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 
 I put on my resume that I like D and every interview I get 
 asked about it, having to explain what D even is because they 
 have never heard of it. I have never seen a job posting listing 
 D.
We are still hiring programmers - including to write D - in London and HK (could do Singapore also). We pay well and we have interesting people. I have said I will pause after ten more people, but it's likely to be more than that in the longer run. Drop me a line if you like - laeeth at kaleidic.io The people that talk about what they are doing in public - it's a particular subset and that leads to a distorted perspective sometimes. Have you noticed also that the largest commercial users of D don't spend much time in the forums? My guess is it's not because they don't want to, but just because they don't have time.
Apr 14 2019
prev sibling next sibling parent reply Guillaume Lathoud <gsub glat.info> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 Sorry for that title, but this is something I have been 
 thinking about for a while...

 I honestly feel like D is a failure. I kinda just wanted to 
 vent about it and see what other people think.

 I have been using D since around 2012 or 2013, instantly fell 
 in love, use to post on the forms a lot under the name Tofu 
 Ninja. I was convinced D was the future but since then I have 
 become disheartened. The biggest thing that makes me feel like 
 this is that in the 7 years I have been using D I literally 
 have never met another programmer IRL who has even heard of it. 
 I put on my resume that I like D and every interview I get 
 asked about it, having to explain what D even is because they 
 have never heard of it. I have never seen a job posting listing 
 D. Never see any projects pop up on /r/programming using D. It 
 feels like to the rest of the programming universe, D doesn't 
 even exist. Sometimes I see threads on reddit like "what's your 
 favorite programming language" and I always look for D but 
 never find it.

 And honestly I don't think that is going to change. I feel like 
 D has failed.

 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years? Am I missing some part of the 
 picture? Or am I right and if so what can be done about it?
That lack of popularity, combined with the lack of corporate backing, may precisely be what allowed D to exist at all, as it is. I personally enjoy D both for paid work and for private projects. Maybe there is a psychological explanation for the debate here - please bear with me - just speculating: * once the D beginner passed a few obstacles (how do I get a decent stack trace?)... * ...and enjoyed the full power of D's core features for a few years (runtime performance and stability, combined with high expressiveness, especially sprinkled with a limited amount of CTFE code, here and there)... pure bliss, probably where I am at... * ...things are going so smooth that tolerance to frustration steadily lowers, without one noticing it... * ...then the D user hits the "things-that-break-all-the-time", mostly more advanced features, and suffers, especially because of the blissful experience enjoyed so far, so that he takes the time and energy to complain here - actually a positive sign - instead of silently leaving the D community. On the other side, Walter & Andrei point the lack of manpower, one cannot just complain and expect something to change. But since this type of debate pops up every now and then on the forum, there may well be some part of truth in it. I warn against forking D - the already limited manpower would fragment, and most likely the result would be something like the LISP family of language, great fundamental expressive power, but many groups of people reimplementing everything from scratch, each group using its own variant. My two cents of what could be possible on the short term, with limited amount of work: (1) Keep complaining! I mean it. But then please take the time to split into precise complaints, e.g. for each precise topic, write a text precisely describing the complaint on GitHub or similar, at best with a few suggestions for remedies, then point at it here, and see how many stars it gets. This requires zero work from D's main contributors, only from the complainers, and does not clutter D's issue tracker, and could help to see how popular each specific complaint is. (2) On the other side it could be worth considering marking *language* features as experimental - or if it is already done, making it more obvious. When I look in Google for "dlang experimental features", I get mostly library stuff, not language features: https://www.google.com/search?hl=en&q=dlang%20experimental%20features This would help a lot in the context of long-term paid work, to decide whether to use a particular language feature of D, or not. On the longer term, I see two things that would really help: * compilation that takes more advantage of having multiple cores, * more recurring sponsoring for the D fondation, without strings attached. I hope this helps, Guillaume
Apr 14 2019
parent reply Guillaume Piolat <first.last gmail.com> writes:
On Sunday, 14 April 2019 at 10:25:03 UTC, Guillaume Lathoud wrote:
 Maybe there is a psychological explanation for the debate here 
 - please bear with me - just speculating:
It's a lot less complicated than it sounds. Some average joes (you know who they are) with zero skin in the game are given the chance to talk to incredible programmers and have them answer in a sort of ego-tripping trance. But the only way to have them answer is to troll more or less subtly, and this behaviour has been going on for years. The lesson should only be that the leadership **should not have to listen to this whole load of non-sense** from anonymous low-achievers that blame their tools. And they want things that works well to fail with them. Do you imagine half the users of python-dev publicly berating Guido, every day for anything he would says? No, because that would be incredibly ridiculous. Hence why we have so many "helpful", anonymous poster who come with bullet lists of things to do, every day. This must stop because it is neither helpful nor with good intentions.
Apr 14 2019
next sibling parent reply Chris <wendlec tcd.ie> writes:
On Sunday, 14 April 2019 at 14:41:50 UTC, Guillaume Piolat wrote:
 On Sunday, 14 April 2019 at 10:25:03 UTC, Guillaume Lathoud 
 wrote:
 Maybe there is a psychological explanation for the debate here 
 - please bear with me - just speculating:
It's a lot less complicated than it sounds. Some average joes (you know who they are) with zero skin in the game are given the chance to talk to incredible programmers and have them answer in a sort of ego-tripping trance. But the only way to have them answer is to troll more or less subtly, and this behaviour has been going on for years. The lesson should only be that the leadership **should not have to listen to this whole load of non-sense** from anonymous low-achievers that blame their tools. And they want things that works well to fail with them.
Ha ha ha! Nicely put. People complain about aloofness and arrogance and are called underachievers the leaders shouldn't listen to. A beauty! A recipe that has worked well throughout history. Also, these "skin in the game" comments, I used to have a skin, a reasonably big one, in the game, but I found out that that's what it is for you guys, a game. A game of features, a game of having one up on other posters, a game of shifting the blame. All I know is that much younger languages already get the basics right or try hard to get them right, craft and test features carefully, no cowboy work.
Apr 14 2019
parent reply Guillaume Piolat <first.last gmail.com> writes:
On Sunday, 14 April 2019 at 14:59:30 UTC, Chris wrote:
 Ha ha ha! Nicely put. People complain about aloofness and 
 arrogance and are called underachievers the leaders shouldn't 
 listen to. A beauty! A recipe that has worked well throughout 
 history.
Spending dozens of hours spreading negativity on online forums (of languages you don't like!) is the definition of lost time.
Apr 14 2019
parent reply Chris <wendlec tcd.ie> writes:
On Sunday, 14 April 2019 at 15:04:39 UTC, Guillaume Piolat wrote:
 On Sunday, 14 April 2019 at 14:59:30 UTC, Chris wrote:

 Spending dozens of hours spreading negativity on online forums 
 (of languages you don't like!) is the definition of lost time.
Don't like? I used to like D very much and still do, it's not that I hate it all of a sudden. It's just that I can no longer use it due to various restrictions / issues that are down to bad management, nothing else. One has to be practical sometimes. If anything I'm sad.
Apr 14 2019
parent reply Guillaume Piolat <first.last gmail.com> writes:
On Sunday, 14 April 2019 at 15:12:33 UTC, Chris wrote:
 On Sunday, 14 April 2019 at 15:04:39 UTC, Guillaume Piolat 
 wrote:
 On Sunday, 14 April 2019 at 14:59:30 UTC, Chris wrote:

 Spending dozens of hours spreading negativity on online forums 
 (of languages you don't like!) is the definition of lost time.
Don't like? I used to like D very much and still do, it's not that I hate it all of a sudden. It's just that I can no longer use it due to various restrictions / issues that are down to bad management, nothing else. One has to be practical sometimes. If anything I'm sad.
Yes, I suspect people here honestly like D, and want it to be more perfect, but it has to be reminded time and time again that noone knows exactly what should be done - it's a bit like predicting the future -, even if we did know, it's volunteer work out of love so we cannot have that much direction (much less impulsed from the outside). Of course the community can have blind spots but I don't think people would agree what those blind spots are. "D is failing" has the attribute of a meme, if the number of users are great, funding solify, more compilers and platform support exist than ever before (without any seasonal hype) then there is no real reason to worry about the competition. Really I've heard it for 14 years, "listen to me because D is failing". OTOH An important metrics of an open-source project is _well-being of contributors_, and their numbers, and that is the prime attribute to cater for. Hence why I think we get too much of a good thing (complaint directly aimed at important contributors) that worsen the situation it is supposed to improve.
Apr 14 2019
parent reply IGotD- <nise nise.com> writes:
On Sunday, 14 April 2019 at 15:24:32 UTC, Guillaume Piolat wrote:

 "D is failing" has the attribute of a meme, if the number of 
 users are great, funding solify, more compilers and platform 
 support exist than ever before (without any seasonal hype) then 
 there is no real reason to worry about the competition.
This thread is kind of a self fulfilling prophecy. For those who think D has failed, I suggest you just sit and wait until it fails. Just for comparison, a compiler that has failed (not the language) is OpenWatcom. Last update was in 2010. It is dead simply because there aren't any contributors and the reason is that GCC and Clang is doing a better job. Watcom was a good compiler back in its days though. This is a list of "system programming languages" from Wikipedia. ESPOL PL/I PL360 C PL/S BLISS PL/8 PL-6 SYMPL C++ Ada D Nim Go Rust Swift Apart from C/C++, which "system programming languages" has succeeded here? ESPOL, PL/I, PL360, PL/S, BLISS, PL/8, PL-6, SYMPL are old and was more used when computers smelled brunt. Ada is kind of successful but used more in military, avionics and other critical SW. Very little used outside this domain though, which is strange as it is supposed to be a safe language which is seems to be the fad of today. Nim, following is even smaller than D. Good language but rough around the edges and not as consistent as it should be. Rust, is that "modern" runner up and heavily promoted, the language that is safe and is going to solve everything. I disagree, I think it will not pick up because as soon you try to do something more outside the box you will hit a brick wall. Swift and Go, in my opinion don't belong here as my interpretation of a "system programming language" is that it shouldn't be dependent on a runtime. D is kind of in this category as well but recent betterC development moved it into the system programming language category. There are probably more but these are little used that we don't need to mention them here. When it comes to other programming languages used for applications then competitions really stiffens up. In this league we have Python which is undoubtedly the current king among other really because it is so simple, intuitive, easy to find information, massive library support, the complete opposite of Rust why I think it is a dead end. It is clear that C/C++ has a massive code base and users, that's why these languages are on top and no other language seem to even approach their usage. Many companies are hugely invested in C/C++ and that's why they must continue. That in mind it is absolute killer feature of D to have a C/C++ FFI that many other languages don't have. Nim, has some of this. Rust goes nuts if you talk to any other language. How many know that you can mix D with C++? If you look at the other languages (except C/C++) do you still think D has failed? I certainly don't think so, it is right there among the competitors. Some talk about the failure of the management of D, that might be so however I don't think it is too late to improve this.
Apr 14 2019
next sibling parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Sunday, 14 April 2019 at 18:09:16 UTC, IGotD- wrote:
 Rust, is that "modern" runner up and heavily promoted, the 
 language that is safe and is going to solve everything. I 
 disagree, I think it will not pick up because as soon you try 
 to do something more outside the box you will hit a brick wall.
Probably true. Too high level without providing high level convenience.

 the success is really because it is so simple, intuitive, easy 
 to find information, massive library support, the complete 
 opposite of Rust why I think it is a dead end.
Python has also improved with (optional) static typing capabilities. I am sure many people run Python on embedded devices without telling anyone...
 It is clear that C/C++ has a massive code base and users, 
 that's why these languages are on top and no other language 
 seem to even approach their usage. Many companies are hugely 
 invested in C/C++ and that's why they must continue.
Not only that, but hardware manufacturers provide support for them...
 Nim, has some of this.
Compiling to C is a good option, but Walter has always been very much against it.
 Rust goes nuts if you talk to any other language.
Really? It interfaces with C doesn't it?
 If you look at the other languages (except C/C++) do you still 
 think D has failed? I certainly don't think so, it is right 
 there among the competitors.
A system level programming language is not a success until at least one notable manufacturerer or consulting company supports it in some way. IMHO.
Apr 14 2019
parent IGotD- <nise nise.com> writes:
On Sunday, 14 April 2019 at 19:28:54 UTC, Ola Fosheim Grøstad 
wrote:
 Compiling to C is a good option, but Walter has always been 
 very much against it.
LLVM support is more important I think, which D already has which is great. The question is if the project is going to spend resources on maintaining the code generator in DMD. My opinion is that we could stop maintaining it and go full LLVM.
 Rust goes nuts if you talk to any other language.
Really? It interfaces with C doesn't it?
Rust supports C interoperability, not C++. There are some third party libraries for COM support. As soon you cast to a pointer which you often do when calling C interfaces, Rust looses track of the memory and you need to manage it yourself. What you can is to transmute back again after the call. Strange design decision as most are of const void* type or similar doing nothing to the memory.
Apr 14 2019
prev sibling parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 4/14/19 2:09 PM, IGotD- wrote:
 That in mind it is absolute killer feature of D to have a C/C++ FFI that 
 many other languages don't have.
I agree, and sadly it's not a popular enough opinion. A couple of years ago I called on the phone two of our most promising contributors who asked what they should help with, and pitched the core.stdcpp project. They both declined it. No hard feelings - we're grateful enough they chose to do other things within the D milieu -, but it goes to show that planning and "finding a guy" and telling people what to work on is easier said than done, at least for me. I'm glad Manu has taken point on that, wished he got wider help.
Apr 14 2019
next sibling parent Suleyman <sahmi.soulaimane gmail.com> writes:
On Sunday, 14 April 2019 at 20:48:44 UTC, Andrei Alexandrescu 
wrote:
 but it goes to show that planning and "finding a guy" and 
 telling people what to work on is easier said than done, at 
 least for me.
People have to move on this is life but projects should persist. How about making a list of projects on github with milestones and task lists and dedicate a forum section or a pinned thread to contributors where you regularly update which projects are progressing and where you need extra workers or funding also you could prioritize projects using polls from the community you can also make a buglist project and prioritize the most wanted bugs. I myself am a programmer I'm not experienced in management but it would make the job of a passing by contributor much easier if things are working in harmony and it would also make the users happy if they see the projects they voted for are in progress.
Apr 14 2019
prev sibling parent reply Dibyendu Majumdar <d.majumdar gmail.com> writes:
On Sunday, 14 April 2019 at 20:48:44 UTC, Andrei Alexandrescu 
wrote:
 On 4/14/19 2:09 PM, IGotD- wrote:
 That in mind it is absolute killer feature of D to have a 
 C/C++ FFI that many other languages don't have.
I agree, and sadly it's not a popular enough opinion. A couple of years ago I called on the phone two of our most promising contributors who asked what they should help with, and pitched the core.stdcpp project. They both declined it. No hard feelings - we're grateful enough they chose to do other things within the D milieu -, but it goes to show that planning and "finding a guy" and telling people what to work on is easier said than done, at least for me. I'm glad Manu has taken point on that, wished he got wider help.
I have considered using D for a long time, and yet haven't. The reasons are maybe applicable to many. Ultimately it boils down to what you need to do to make a living. If you had tons of spare money you can probably afford to work on something you like or think is good; but if you need to earn then you have to go where the demand is. The tooling (editor and debugger) is important too for anyone that wants to get the job done or suggest D to an organisation. Here is a proposal: Freeze D development for 2 years and redirect all energy to tooling.
Apr 15 2019
next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/15/2019 3:09 AM, Dibyendu Majumdar wrote:
 Ultimately it boils down to what you need to do to 
 make a living. If you had tons of spare money you can probably afford to work
on 
 something you like or think is good; but if you need to earn then you have to
go 
 where the demand is.
Laeeth Isharc just posted another list of job openings for D programmers at his company: https://digitalmars.com/d/archives/digitalmars/D/Has_D_failed_unpopular_opinion_but_I_think_yes_325826.html#N325995
Apr 15 2019
parent reply Dibyendu Majumdar <d.majumdar gmail.com> writes:
On Monday, 15 April 2019 at 10:43:12 UTC, Walter Bright wrote:
 On 4/15/2019 3:09 AM, Dibyendu Majumdar wrote:
 Ultimately it boils down to what you need to do to make a 
 living. If you had tons of spare money you can probably afford 
 to work on something you like or think is good; but if you 
 need to earn then you have to go where the demand is.
Laeeth Isharc just posted another list of job openings for D programmers at his company: https://digitalmars.com/d/archives/digitalmars/D/Has_D_failed_unpopular_opinion_but_I_think_yes_325826.html#N325995
Sure but consider this: Firstly a handful of jobs posted by one company isn't going to sway developers. Secondly it takes time and effort to master a language such as D. to let them learn D on the job, how are you going to sway programmers to invest the time in D when they could be improving their skills in other languages that have much more demand?
Apr 15 2019
next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/15/2019 6:41 AM, Dibyendu Majumdar wrote:
 Firstly a handful of jobs posted by one company isn't going to sway developers.
It sounded like you personally were looking for a D job. Besides, since there are outstanding D job openings, arguing one can't get a job with D doesn't work. Companies are posting here *looking* for D programmers. Quite a lot of D programmers have been able to get D jobs. Attending DConf is a great way to network with companies looking to hire (as is typical with focused tech conferences).
Apr 15 2019
next sibling parent watcher <watcher aol.com> writes:
On Monday, 15 April 2019 at 20:07:52 UTC, Walter Bright wrote:
 On 4/15/2019 6:41 AM, Dibyendu Majumdar wrote:
 Firstly a handful of jobs posted by one company isn't going to 
 sway developers.
It sounded like you personally were looking for a D job. Besides, since there are outstanding D job openings, arguing one can't get a job with D doesn't work. Companies are posting here *looking* for D programmers. Quite a lot of D programmers have been able to get D jobs. Attending DConf is a great way to network with companies looking to hire (as is typical with focused tech conferences).
i am glad that you get away with a little bit of IntelliJ and some sort of pseudo job applications. Please think about all the problems brought forth and tooling.
Apr 15 2019
prev sibling parent Dibyendu Majumdar <d.majumdar gmail.com> writes:
On Monday, 15 April 2019 at 20:07:52 UTC, Walter Bright wrote:
 On 4/15/2019 6:41 AM, Dibyendu Majumdar wrote:
 Firstly a handful of jobs posted by one company isn't going to 
 sway developers.
It sounded like you personally were looking for a D job.
No, sorry for giving the wrong impression.
 Besides, since there are outstanding D job openings, arguing 
 one can't get a job with D doesn't work. Companies are posting 
 here *looking* for D programmers.
I am not sure I was arguing anything.
 Quite a lot of D programmers have been able to get D jobs. 
 Attending DConf is a great way to network with companies 
 looking to hire (as is typical with focused tech conferences).
Looks like thing are very bright for D then!
Apr 15 2019
prev sibling next sibling parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On Monday, 15 April 2019 at 13:41:46 UTC, Dibyendu Majumdar wrote:
 Secondly it takes time and effort to master a language such as 

 willing to let them learn D on the job
This is exactly what Sociomantic did. Time to learn and be productive in the language was never really an issue for anyone -- in the end we came to the conclusion that looking for domain expertise (e.g. network programming, machine learning, etc. etc.) was much more important than specific language backgrounds. Sure, it can take time to master the finer nuances or more niche language features, but D is super easy to adapt to in my experience. If anything, the harder adaptation was for those of us who _did_ arrive with a D background, coming in all guns blazing wanting to write really cool sophisticated D code and having to learn that, where really robust production code is concerned, sometimes a less sophisticated approach is better ... ;-)
Apr 20 2019
prev sibling parent reply Laeeth Isharc <laeeth kaleidic.io> writes:
On Monday, 15 April 2019 at 13:41:46 UTC, Dibyendu Majumdar wrote:
 On Monday, 15 April 2019 at 10:43:12 UTC, Walter Bright wrote:
 On 4/15/2019 3:09 AM, Dibyendu Majumdar wrote:
 Ultimately it boils down to what you need to do to make a 
 living. If you had tons of spare money you can probably 
 afford to work on something you like or think is good; but if 
 you need to earn then you have to go where the demand is.
Laeeth Isharc just posted another list of job openings for D programmers at his company: https://digitalmars.com/d/archives/digitalmars/D/Has_D_failed_unpopular_opinion_but_I_think_yes_325826.html#N325995
Sure but consider this: Firstly a handful of jobs posted by one company isn't going to sway developers. Secondly it takes time and effort to master a language such as willing to let them learn D on the job, how are you going to sway programmers to invest the time in D when they could be improving their skills in other languages that have much more demand?
Experienced C++ programmers don't seem to be deterred by the prospect of having to learn D. In fact they seem to see it as a hard-to-manufacture positive signal about the culture. I received an email from one person peripherally involved in the community. I asked his compensation expectations and he said X, but I can negotiate if you're really using D. He didn't even want to write D at work mostly but he saw it as a positive signal. I think the cost of learning D is small in relation to the cost of having to learn the context and codebase, certainly for a younger company. For a large firm where everything is in place and it's mostly maintenance possibly it would be different. There aren't so many firms I am aware of with a similar approach in finance; being open to unconventional approaches like using an emerging language is a reflection of that, but really whether someone is a good fit in other respects but just is put off by some technical choices - I have not encountered that so far and find it quite difficult to imagine.
Apr 20 2019
parent reply Dibyendu Majumdar <d.majumdar gmail.com> writes:
On Saturday, 20 April 2019 at 14:36:36 UTC, Laeeth Isharc wrote:
 Experienced C++ programmers don't seem to be deterred by the
 prospect of having to learn D.  In fact they seem to see it as
 a hard-to-manufacture positive signal about the culture.

 I received an email from one person peripherally involved in the
 community.  I asked his compensation expectations and he said X,
 but I can negotiate if you're really using D.  He didn't even 
 want
 to write D at work mostly but he saw it as a positive signal.

 I think the cost of learning D is small in relation to the cost 
 of
 having to learn the context and codebase, certainly for a 
 younger
 company.  For a large firm where everything is in place and it's
 mostly maintenance possibly it would be different.

 There aren't so many firms I am aware of with a similar approach
 in finance; being open to unconventional approaches like using 
 an
 emerging language is a reflection of that, but really whether
 someone is a good fit in other respects but just is put off by
 some technical choices - I have not encountered that so far and
 find it quite difficult to imagine.
Hi, I was referring to the fact that there is very little / no demand for D programmers generally so it doesn't help attract programmers who might be better off learning Go, Rust, Swift, Kotlin etc. My own experience was that I chose C++ over D three years ago in a project where D would have been nice to use, and I have already stated the reasons in a previous post [https://forum.dlang.org/post/crwhrrbdpaydnqfmdzfp forum.dlang.org].
Apr 21 2019
parent Andre Pany <andre s-e-a-p.de> writes:
On Sunday, 21 April 2019 at 16:44:03 UTC, Dibyendu Majumdar wrote:
 On Saturday, 20 April 2019 at 14:36:36 UTC, Laeeth Isharc wrote:
 Experienced C++ programmers don't seem to be deterred by the
 prospect of having to learn D.  In fact they seem to see it as
 a hard-to-manufacture positive signal about the culture.

 I received an email from one person peripherally involved in 
 the
 community.  I asked his compensation expectations and he said 
 X,
 but I can negotiate if you're really using D.  He didn't even 
 want
 to write D at work mostly but he saw it as a positive signal.

 I think the cost of learning D is small in relation to the 
 cost of
 having to learn the context and codebase, certainly for a 
 younger
 company.  For a large firm where everything is in place and 
 it's
 mostly maintenance possibly it would be different.

 There aren't so many firms I am aware of with a similar 
 approach
 in finance; being open to unconventional approaches like using 
 an
 emerging language is a reflection of that, but really whether
 someone is a good fit in other respects but just is put off by
 some technical choices - I have not encountered that so far and
 find it quite difficult to imagine.
Hi, I was referring to the fact that there is very little / no demand for D programmers generally so it doesn't help attract programmers who might be better off learning Go, Rust, Swift, Kotlin etc. My own experience was that I chose C++ over D three years ago in a project where D would have been nice to use, and I have already stated the reasons in a previous post [https://forum.dlang.org/post/crwhrrbdpaydnqfmdzfp forum.dlang.org].
You are right, the demand for D developers is low but almost all companies demand high quality, maintainable software, written in a reasonable time. D allows me to write exactly these kind of software in the first iteration. It is incredibly how fast I can create sophisticated software in D comparing to the well known popular languages. Using these other languages it really feels like working against the language, while D supports me to express exactly the ideas in my mind. Yes, there is definitely some starting investment, I know it. But that is nothing in comparison to using every day a language which slows you down. I use Intellij with the D plugin. Code completion is done by DLS. Works great. Kind regards Andre
Apr 21 2019
prev sibling parent reply Andre Pany <andre s-e-a-p.de> writes:
On Monday, 15 April 2019 at 10:09:40 UTC, Dibyendu Majumdar wrote:
 On Sunday, 14 April 2019 at 20:48:44 UTC, Andrei Alexandrescu 
 wrote:
 On 4/14/19 2:09 PM, IGotD- wrote:
 That in mind it is absolute killer feature of D to have a 
 C/C++ FFI that many other languages don't have.
I agree, and sadly it's not a popular enough opinion. A couple of years ago I called on the phone two of our most promising contributors who asked what they should help with, and pitched the core.stdcpp project. They both declined it. No hard feelings - we're grateful enough they chose to do other things within the D milieu -, but it goes to show that planning and "finding a guy" and telling people what to work on is easier said than done, at least for me. I'm glad Manu has taken point on that, wished he got wider help.
I have considered using D for a long time, and yet haven't. The reasons are maybe applicable to many. Ultimately it boils down to what you need to do to make a living. If you had tons of spare money you can probably afford to work on something you like or think is good; but if you need to earn then you have to go where the demand is. The tooling (editor and debugger) is important too for anyone that wants to get the job done or suggest D to an organisation. Here is a proposal: Freeze D development for 2 years and redirect all energy to tooling.
Could you please tell what do you miss from the tooling? For me Intellij D plugin combined with language server works like a charme. Code completion, linter, formatting, everything works fine Dub is working perfectly for all my use cases. I was never in need to really start the debugger but debugging is working to some extend in windows and is working fine on linux. I am even able to develop applications in windows and using WSL directly compile and debug them on linux. Kind regards Andre
Apr 15 2019
next sibling parent reply JN <666total wp.pl> writes:
On Monday, 15 April 2019 at 10:47:39 UTC, Andre Pany wrote:
 Could you please tell what do you miss from the tooling? For me 
 Intellij D plugin combined with language server works like a 
 charme. Code completion, linter, formatting, everything works 
 fine  Dub is working perfectly for all my use cases. I was 
 never in need to really start the debugger but debugging is 
 working to some extend in windows and is working fine on linux. 
 I am even able to develop applications in windows and using WSL 
 directly compile and debug them on linux.

 Kind regards
 Andre
Last time I tried IntelliJ D plugin, I liked the way it looks and works, but there was some glitch that caused the IDE to freeze for 5-6 seconds every time I typed something :(
Apr 15 2019
parent Andre Pany <andre s-e-a-p.de> writes:
On Monday, 15 April 2019 at 11:34:34 UTC, JN wrote:
 On Monday, 15 April 2019 at 10:47:39 UTC, Andre Pany wrote:
 Could you please tell what do you miss from the tooling? For 
 me Intellij D plugin combined with language server works like 
 a charme. Code completion, linter, formatting, everything 
 works fine  Dub is working perfectly for all my use cases. I 
 was never in need to really start the debugger but debugging 
 is working to some extend in windows and is working fine on 
 linux. I am even able to develop applications in windows and 
 using WSL directly compile and debug them on linux.

 Kind regards
 Andre
Last time I tried IntelliJ D plugin, I liked the way it looks and works, but there was some glitch that caused the IDE to freeze for 5-6 seconds every time I typed something :(
This issue is avoided by using language server DLS for code completion. See end of this site intellij-dlanguage.github.io Kind regards Andre
Apr 15 2019
prev sibling parent reply Dibyendu Majumdar <d.majumdar gmail.com> writes:
On Monday, 15 April 2019 at 10:47:39 UTC, Andre Pany wrote:
 On Monday, 15 April 2019 at 10:09:40 UTC, Dibyendu Majumdar 
 wrote:
 On Sunday, 14 April 2019 at 20:48:44 UTC, Andrei Alexandrescu 
 wrote:
 On 4/14/19 2:09 PM, IGotD- wrote:
 That in mind it is absolute killer feature of D to have a 
 C/C++ FFI that many other languages don't have.
I agree, and sadly it's not a popular enough opinion. A couple of years ago I called on the phone two of our most promising contributors who asked what they should help with, and pitched the core.stdcpp project. They both declined it. No hard feelings - we're grateful enough they chose to do other things within the D milieu -, but it goes to show that planning and "finding a guy" and telling people what to work on is easier said than done, at least for me. I'm glad Manu has taken point on that, wished he got wider help.
I have considered using D for a long time, and yet haven't. The reasons are maybe applicable to many. Ultimately it boils down to what you need to do to make a living. If you had tons of spare money you can probably afford to work on something you like or think is good; but if you need to earn then you have to go where the demand is. The tooling (editor and debugger) is important too for anyone that wants to get the job done or suggest D to an organisation. Here is a proposal: Freeze D development for 2 years and redirect all energy to tooling.
Could you please tell what do you miss from the tooling? For me Intellij D plugin combined with language server works like a charme. Code completion, linter, formatting, everything works fine Dub is working perfectly for all my use cases. I was never in need to really start the debugger but debugging is working to some extend in windows and is working fine on linux. I am even able to develop applications in windows and using WSL directly compile and debug them on linux.
I haven't tried recently but every time I tried in the past there were issues... developers / companies expect tooling to 'just work' so that they can get the job done. I do think tinkering endlessly with D / and its libraries is the wrong focus. Instead core developers should select one set of tooling and work on making them usable; D is already good enough. It is no good saying to programmers that okay step up and fix the tooling yourself. No one (unless they have spare cash to burn) can afford to fix the tooling and then also do their jobs. That's the reality whether anyone likes it or not.
Apr 15 2019
parent Andre Pany <andre s-e-a-p.de> writes:
On Monday, 15 April 2019 at 13:52:53 UTC, Dibyendu Majumdar wrote:
 On Monday, 15 April 2019 at 10:47:39 UTC, Andre Pany wrote:
 On Monday, 15 April 2019 at 10:09:40 UTC, Dibyendu Majumdar 
 wrote:
 On Sunday, 14 April 2019 at 20:48:44 UTC, Andrei Alexandrescu 
 wrote:
 [...]
I have considered using D for a long time, and yet haven't. The reasons are maybe applicable to many. Ultimately it boils down to what you need to do to make a living. If you had tons of spare money you can probably afford to work on something you like or think is good; but if you need to earn then you have to go where the demand is. The tooling (editor and debugger) is important too for anyone that wants to get the job done or suggest D to an organisation. Here is a proposal: Freeze D development for 2 years and redirect all energy to tooling.
Could you please tell what do you miss from the tooling? For me Intellij D plugin combined with language server works like a charme. Code completion, linter, formatting, everything works fine Dub is working perfectly for all my use cases. I was never in need to really start the debugger but debugging is working to some extend in windows and is working fine on linux. I am even able to develop applications in windows and using WSL directly compile and debug them on linux.
I haven't tried recently but every time I tried in the past there were issues... developers / companies expect tooling to 'just work' so that they can get the job done. I do think tinkering endlessly with D / and its libraries is the wrong focus. Instead core developers should select one set of tooling and work on making them usable; D is already good enough. It is no good saying to programmers that okay step up and fix the tooling yourself. No one (unless they have spare cash to burn) can afford to fix the tooling and then also do their jobs. That's the reality whether anyone likes it or not.
One set of tooling will not work. I highly valuate that Rainer is working on Visual Studio plugin and Webfreak as far as I know is working on Visual Studio Code. But both tools I can't use because I dislike how MS designed the development workflow. Each developer has his/her preference. I used my spare time to improve the tools I use at work (dub, IntelliJ D plugin). It worths the effort, it makes you happy and the community. Kind regards Andre
Apr 15 2019
prev sibling next sibling parent reply Tourist <gravatar gravatar.com> writes:
On Sunday, 14 April 2019 at 14:41:50 UTC, Guillaume Piolat wrote:
 On Sunday, 14 April 2019 at 10:25:03 UTC, Guillaume Lathoud 
 wrote:
 Maybe there is a psychological explanation for the debate here 
 - please bear with me - just speculating:
It's a lot less complicated than it sounds. Some average joes (you know who they are) with zero skin in the game are given the chance to talk to incredible programmers and have them answer in a sort of ego-tripping trance. But the only way to have them answer is to troll more or less subtly, and this behaviour has been going on for years. The lesson should only be that the leadership **should not have to listen to this whole load of non-sense** from anonymous low-achievers that blame their tools. And they want things that works well to fail with them. Do you imagine half the users of python-dev publicly berating Guido, every day for anything he would says? No, because that would be incredibly ridiculous. Hence why we have so many "helpful", anonymous poster who come with bullet lists of things to do, every day. This must stop because it is neither helpful nor with good intentions.
As an occasional visitor here I tend to agree. The last batch of leadership tips comes from an outsider who preaches things done for years. He gives pages of advice on management but admits he is "not good at project management". It's just a "feeling" he has. He will contribute nothing and will be gone after having his ego-trip orgasm. Look for good people and make a plan, what a new idea. They've been looking for people, recall Andrei's lieutenants and czars that never showed up. They've made plans, visions are since 2015: https://wiki.dlang.org/Vision/2015H1 Looking at all docs it seems nobody worked on what's there and I'm not surprised they stopped putting them out.
Apr 14 2019
parent Guillaume Piolat <first.last gmail.com> writes:
On Sunday, 14 April 2019 at 15:54:58 UTC, Tourist wrote:
 As an occasional visitor here I tend to agree.
I've described people like you exactly: - trying to make things fail - anonymous - no skin in the game - calling people names https://forum.dlang.org/post/wdywyksoobcbqdbbnbht forum.dlang.org https://forum.dlang.org/post/okyuviojboxywxqmsvfy forum.dlang.org Why are you doing this?
Apr 14 2019
prev sibling next sibling parent Guillaume Piolat <first.last gmail.com> writes:
On Sunday, 14 April 2019 at 14:41:50 UTC, Guillaume Piolat wrote:
 Do you imagine half the users of python-dev publicly berating 
 Guido, every day for anything he would says? No, because that 
 would be incredibly ridiculous.
Actually it did happen, and was called out immediately: https://mail.python.org/pipermail/python-dev/2003-February/033056.html
Apr 14 2019
prev sibling parent Laeeth Isharc <laeeth kaleidic.io> writes:
On Sunday, 14 April 2019 at 14:41:50 UTC, Guillaume Piolat wrote:
 On Sunday, 14 April 2019 at 10:25:03 UTC, Guillaume Lathoud 
 wrote:
 Maybe there is a psychological explanation for the debate here 
 - please bear with me - just speculating:
It's a lot less complicated than it sounds. Some average joes (you know who they are) with zero skin in the game are given the chance to talk to incredible programmers and have them answer in a sort of ego-tripping trance. But the only way to have them answer is to troll more or less subtly, and this behaviour has been going on for years. The lesson should only be that the leadership **should not have to listen to this whole load of non-sense** from anonymous low-achievers that blame their tools. And they want things that works well to fail with them. Do you imagine half the users of python-dev publicly berating Guido, every day for anything he would says? No, because that would be incredibly ridiculous. Hence why we have so many "helpful", anonymous poster who come with bullet lists of things to do, every day. This must stop because it is neither helpful nor with good intentions.
This rings true to me, although I would have put it more gently. The better you do, the harder it is to get good feedback. However part of the reason for that is that there is a lot of 'free advice' from people who don't live or die by the consequences of taking such advice. One way to tell the difference is to ask if the giver of advice acts like someone who sincerely wants to achieve the same things you do and has capabilities that lead them to having insight and has taken the trouble to inform themselves about the situation. Another important question is do they at least in some way that's reasonable in relation to the constraints of their situation do a bit towards furthering the prospects of D. It's a big big world and it's not going to work if one tries to make everyone happy. The beauty of voluntary co-operation is you don't need to do that - just having a high appeal to a small proportion of the population is enough. Peter Thiel talks about this in Zero To One - it's much better to have a monopoly, even if in relation to a small market, that's one you earn and continue to earn every day than trying to have a small share of an enormous market. If that's the implicit approach being followed then reducing your appeal to your core market by trying to increase your appeal to everyone else may not be as sensible as it might initially seem - at least one needs to think it through a bit. If wishes were horses, beggars would ride. In an open-source community, it's not possible to order people to work on things they don't want to. It's not necessarily even true of an enterprise that you can order independent-minded people to work on what doesn't appeal to them. It's best to recognise reality if one wishes to be effective. That doesn't mean that it won't be possible to accomplish things that don't initially appeal to people for intrinsic reasons - just that you might have to approach things in a different way. The need for programming is - perhaps sadly - increasing in the world. I say sadly because I'd be quite happy if I could just focus on things that I myself find intrinsically interesting, and yet because software is indeed eating the world, one doesn't in some situations have a choice. Furthermore the need for performant code that permits control over memory layout and yet still allows one to be reasonably productive and to morph the code from a prototype to production code - the mysterious quality of plasticity - that need is not diminishing. Languages are not in a zero-sum fight to the death, not at all. There's plenty of room for D to continue to succeed. It's nice to know what people think should be changed to improve things. Perhaps Facebook are right that working code (or whatever the relevant work product might be) wins arguments much more effectively than words. I wonder if channeling some of this dissatisfaction in generative and creative directions wouldn't be better for everyone.
Apr 20 2019
prev sibling next sibling parent reply Aldo <aldocd4 outlook.com> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 [...]

 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years? Am I missing some part of the 
 picture? Or am I right and if so what can be done about it?
Hello, I'm using D since 2015. I will try to share my view of it as a simple "back-end web dev". For me, D has not failed at all. It improved a lot since my first hello world, but it still need a lot of work. I remember using it before 2015, it was just a total mess. Today i'm happy to use it everyday at home and I try to push it at work (but it's not easy when everybody think Go or Rust are the best incoming programming languages...). What I like about D: - Easy and fast installation - Fast compilation - Beautiful syntax - Base performance is great (dmd with gc) when you don't work on AAA games - DUB works nicely for me What I dont like about D: [Esthetical part] - Keyword naming. We really need to do something about small things like that. I don't like the fact that we have a " " before a keyword and sometimes not. - File naming. Why are we using filenameslikethat.d ? It's just ugly. Just go with something as simple as file_name.d. Again I understand that for you it's not a real problem and it's not top priority(and you are right), but trust me it just seems ugly when you come from another language. [Others] - Every time I try to read the source code of the std on github, I close the browser tab after 5 seconds. I'm trying to find the body of a simple function, and I need to find it and try to understand how it works in a +10000 lines source file. I think the best improvement would be to separate tests and the real code. Sometimes I check the source code of the Go std, and honestly it's just 200x cleaner. It's so easy to read even for users like me. In D we have 50 lines of doc, 10 lines of code, 50 lines of tests. It's too much and people are doing the same mistake in their projects. - Static lib. Always a linker error with coff/omf (I don't even know what it means) and a conversion is needed. I always give up and go with derelict. - When I try to build a simple hello world with vibe, I have this fuc**** linker error that pop out on windows. This one is really unacceptable, I don't know how to fix this myself guys, but i'm sure one of you can. Just do it please. How are we supposed to spread Dlang when new users have to deal with things like that for a simple hello world ? I still believe in this language and will continue to use it. But we really need to keep improving it (and I will try to help as well even if I don't have the required skills). My goal is to release a game with it on steam platform, and I think it's totally doable today. Thanks for all the efforts you put in the language.
Apr 15 2019
parent Timon Gehr <timon.gehr gmx.ch> writes:
On 15.04.19 11:49, Aldo wrote:
 
 [Others]
 - Every time I try to read the source code of the std on github, I close 
 the browser tab after 5 seconds. I'm trying to find the body of a simple 
 function, and I need to find it and try to understand how it works in a 
 +10000 lines source file.
Maybe modules should be smaller, but manually finding symbols really is not why. Text search works fine. In fact, some modules have been split now and it has actually slightly increased the inconvenience of manually locating a symbol, because unless you know what went where, you need to grep in multiple files instead of just opening one of the files and doing a search there.
Apr 15 2019
prev sibling next sibling parent "Nick Sabalausky (Abscissa)" <SeeWebsiteToContactMe semitwist.com> writes:
On 4/12/19 3:35 AM, Tofu Kaitlyn wrote:
 
 I put on my resume that I like D and every 
 interview I get asked about it, having to explain what D even is because 
 they have never heard of it. I have never seen a job posting listing D. 
FWIW, compared to programmers, software managers and *especially* HR folk tend to be behind the curve on knowing what's out there, and the general state of things. I'm definitely with you on the frustration, but here's a couple perspectives that I try to remind myself which might help (maybe they'll help you more than they help me! ;) ): 1. *Every* programmer knows one or a few of the "popular" languages: languages have limitations D lacks. Knowing and liking D gives you a secret ace up your sleeve, an advantage over others, anytime the brass needs something done and doesn't care how. Ok, so, what, every hiring manager asks you about it? That's a *GOOD* potential for you - it means you have the potential to offer them something that clearly nobody else has ever offered them, and they haven't even dreampt of finding. 2. If you can convince them that you *do* know the main common-denominator garbage language(s) they use and you're happy with it and genuinely willing to use it (that sort of "putting up with crap" is what separates bringing in $$$ from doing volunteer OSS work), then you're almost there...At that point, all you have to do is keep in mind: Your passion and knowledge and (this is key here) **ability to evangelize and clearly articulate** the details/differences/benefits of an ADDITIONAL language that **even their** pointy-haired brains have never even heard of(!!), yet could potentially benefit them (or better yet, give them a hidden advantage...mua ha ha ha ha)...Well, at that point, if you've sold it right and they're not too terribly dense (which would be a bad sign for your future happiness there anyway), then congratulations, you've just helped sell yourself to them and distinguished yourself from the unwashed masses. Granted, this is all just theory, I can't guarantee success from it, and...frankly I've never personally tried. Personally, the route I took instead was to just supplement my freelance income by picking up a part time job doing shelving at the local public library. They absolutely *love* that I can alphabetize and do basic sorting without fucking it all up (I don't think they know it, but my experience with algorithms and optimization helps me here - and I was shit at alphabetical order until I started working there, had to constantly go though the alphabet song in my head for the first year or two). But then *I* love that I get something actually reliable (however small it may be) as an income while getting out of the house/cubicle/office, around people occasionally practicing basic human interaction, and still being useful while getting to shut most of my brain off. So to each their own, hope you find your niche! And this support group will continue to meet every Thursday evening, bring a friend, refreshments will be served. ;)
Apr 18 2019
prev sibling next sibling parent reply burjui <bytefu gmail.com> writes:
The general feeling I get about D management is that it has 
brains, but lacks balls and focus. The typical response to that 
is: "Yeah, well, we are a community-driven project, we cannot 
order anyone. We are not obliged to do anything particular, so we 
do what we feel like doing. So if you want something particular 
to be done, go and do it yourself."

Surely, what you, the "community", mean is "actions speak louder 
than words". What you forget is that it also applies to you. Your 
actions are all over the place. I am especially disappointed with 
Walter. He might not like that, but as the creator of D and, 
admittedly, the biggest compiler expert here, is considered the 
king of D, with ultimate authority, power and knowledge. 
Ultimately, D is his child, and he bears responsibility for its 
future. But he wants to abstract himself from that and be seen as 
just a part of the community, not as a figure of authority. At 
the same time, he has strong opinions on certain topics (bugzilla 
issue 2043 comes to mind) and it does not seem that it would be 
productive to even create PRs for those, as they are not likely 
to be accepted. That is very convenient: "I don't want to be in 
charge and do what is needed rather than what I like 
(refactoring, C++ interop, custom codegen that nobody really 
needs because LLVM and whatnot), but I also know better what 
should and what should not be done with the language". It is too 
late, though, many people have invested too much in D.

The overall impression I get from D community efforts can be 
visualised as patchwork: you can patch as many holes as you want, 
but it does not change the fact that the fabric itself is weak. 
There should not be 3 different compilers, all managed by 
different parts of the community. Soundness bugs should be fixed 
first and foremost. There should be clear idea out there of what 
D should be: not a bunch of cool half-baked features merged into 
a language, but a solid language with concrete goals.

People here do not like to hear about Rust and often throw cheap 
jabs at it (like, ooh, ugly syntax and lifetimes), but it's a 
perfect example of what a language should be: a solid foundation, 
not a mine field with candy trees. Yeah, it has corporation 
support, but it's not the key to its success. The key is 
principles and determination. These guys are focused, concerned 
about language soundness and are willing to do research and hard 
work to ensure, that the sole Rust compiler is as good, as it can 
be practically. The only times rustc crashed or produced bad code 
were when I was using nightly. And it still happened less 
frequently than with stable DMD. Obviously, Rust's support for 
CTFE is still limited and const generics are not there yet, but I 
can live without them for now, because the lion's share of code 
does not benefit from them. What matters is what they have works 
great. Oh, and it also works on Cortex-M3 like a charm, I wish I 
could say that about D.

I have been a D fan for more than 10 years, but I had to stop 
using it. And if it sounds like I am talking about drugs, it 
should be. Now, looking back, I cannot justify all the time and 
effort I spent on it.
Apr 19 2019
next sibling parent IGotD- <nise nise.com> writes:
On Friday, 19 April 2019 at 14:28:26 UTC, burjui wrote:

 People here do not like to hear about Rust and often throw 
 cheap jabs at it (like, ooh, ugly syntax and lifetimes), but 
 it's a perfect example of what a language should be: a solid 
 foundation, not a mine field with candy trees. Yeah, it has 
 corporation support, but it's not the key to its success. The 
 key is principles and determination. These guys are focused, 
 concerned about language soundness and are willing to do 
 research and hard work to ensure, that the sole Rust compiler 
 is as good, as it can be practically.
I think the reason for the success of Rust if you want to call it that, is that it was made for something. Rust was made for a large project in order to reduce memory management problems and problems when sharing data between threads. The language had a purpose from the beginning. This "focus" in the Rust project is because there were clear goals. I trend is clear, when you create something for a purpose you also get clear goals. Rust is one example. Git is another example, DVCS for a large kernel project. Libre Office, create a free clone of MS office. Ada, a safe language for mission critical applications. Many of these are reused in other projects and domains because they have proven themselves to be up for the task in the project they were created for. D was not created to solve something in a project (what I know about) but was created to give a better compiled language than C++. Obviously C++ wasn't bad enough. This leads to that there is no clear direction of D because it has no problems or questions to solve. This is also clear from the discussions here that there is no clear understanding what D is supposed to be. The discussion should more be "what problems should D solve", then you get the goals.
Apr 19 2019
prev sibling next sibling parent reply bachmeier <no spam.net> writes:
On Friday, 19 April 2019 at 14:28:26 UTC, burjui wrote:
 The general feeling I get about D management is that it has 
 brains, but lacks balls and focus. The typical response to that 
 is: "Yeah, well, we are a community-driven project, we cannot 
 order anyone. We are not obliged to do anything particular, so 
 we do what we feel like doing. So if you want something 
 particular to be done, go and do it yourself."
I'm guilty of saying that. Not because I take joy in it, but because that is reality. Perhaps that can be blamed on management, but only to the extent that they haven't been able to secure funding to hire developers.
 But he wants to abstract himself from that and be seen as just 
 a part of the community, not as a figure of authority. At the 
 same time, he has strong opinions on certain topics (bugzilla 
 issue 2043 comes to mind) and it does not seem that it would be 
 productive to even create PRs for those, as they are not likely 
 to be accepted. That is very convenient: "I don't want to be in 
 charge and do what is needed rather than what I like 
 (refactoring, C++ interop, custom codegen that nobody really 
 needs because LLVM and whatnot), but I also know better what 
 should and what should not be done with the language". It is 
 too late, though, many people have invested too much in D.
A good example of this, as I mentioned there is the latest thread on fixing Dub's problems. There are two people who want to have the final say on everything, but they are completely silent about a critical piece of official infrastructure because it's not interesting to them. There is plenty of manpower willing to do the work, but at this point there are useless conversations on the mailing list because nobody has authority to make decisions, so nothing will come of those conversations.
 it's a perfect example of what a language should be: a solid 
 foundation, not a mine field with candy trees. Yeah, it has 
 corporation support, but it's not the key to its success. The 
 key is principles and determination. These guys are focused, 
 concerned about language soundness and are willing to do 
 research and hard work to ensure, that the sole Rust compiler 
 is as good, as it can be practically.
I would definitely not consider it "what a language should be" but it is a well run project. It's not just the core group working on the compiler though. It's also the much larger community of developers building third party libraries and practical projects and blogging about the language and spamming HN and discussions of other languages to generate interest. I blame the larger community for the lack of interest in D much more than Walter or Andrei. Rust attracted a more productive community than D.
 I have been a D fan for more than 10 years, but I had to stop 
 using it. And if it sounds like I am talking about drugs, it 
 should be. Now, looking back, I cannot justify all the time and 
 effort I spent on it.
I'm lucky that for my use (as an improved C to interoperate with other languages) D works very well. I'm beginning to think my example is rare.
Apr 19 2019
parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 4/19/19 1:39 PM, bachmeier wrote:
 A good example of this, as I mentioned there is the latest thread on 
 fixing Dub's problems. There are two people who want to have the final 
 say on everything, but they are completely silent about a critical piece 
 of official infrastructure because it's not interesting to them. There 
 is plenty of manpower willing to do the work, but at this point there 
 are useless conversations on the mailing list because nobody has 
 authority to make decisions, so nothing will come of those conversations.
I've had a number of answers to your framing lack of work on dub as a leadership problem. Deleted them all after chatting with a friend for a couple of hours. Let me just point it that at a certain level you are definitely right - that dub has problem _is_ a leadership problem. The trick is figuring out what the level is. Sönke Ludwig is the point of contact for Dub according to https://wiki.dlang.org/People. He, Martin, and Seb have had as much decision power as they wanted to with that project. Walter and I have accepted to integrate dub with the distribution after much insistence under an implied social contract that has since decayed. This seems like a very important project to you, so I would be glad to grant you, bachmeier, full decision power with dub and update the points of contact appropriately. This is not cheeky - I am serious. Please advise.
Apr 19 2019
next sibling parent Rose <rose sarajevo.com> writes:
On Friday, 19 April 2019 at 17:58:24 UTC, Andrei Alexandrescu 
wrote:
 On 4/19/19 1:39 PM, bachmeier wrote:
 A good example of this, as I mentioned there is the latest 
 thread on fixing Dub's problems. There are two people who want 
 to have the final say on everything, but they are completely 
 silent about a critical piece of official infrastructure 
 because it's not interesting to them. There is plenty of 
 manpower willing to do the work, but at this point there are 
 useless conversations on the mailing list because nobody has 
 authority to make decisions, so nothing will come of those 
 conversations.
I've had a number of answers to your framing lack of work on dub as a leadership problem. Deleted them all after chatting with a friend for a couple of hours. Let me just point it that at a certain level you are definitely right - that dub has problem _is_ a leadership problem. The trick is figuring out what the level is. Sönke Ludwig is the point of contact for Dub according to https://wiki.dlang.org/People. He, Martin, and Seb have had as much decision power as they wanted to with that project. Walter and I have accepted to integrate dub with the distribution after much insistence under an implied social contract that has since decayed. This seems like a very important project to you, so I would be glad to grant you, bachmeier, full decision power with dub and update the points of contact appropriately. This is not cheeky - I am serious. Please advise.
Dissapearing act... better than Houdini.
Apr 20 2019
prev sibling parent reply bachmeier <no spam.net> writes:
On Friday, 19 April 2019 at 17:58:24 UTC, Andrei Alexandrescu 
wrote:
 On 4/19/19 1:39 PM, bachmeier wrote:
 A good example of this, as I mentioned there is the latest 
 thread on fixing Dub's problems. There are two people who want 
 to have the final say on everything, but they are completely 
 silent about a critical piece of official infrastructure 
 because it's not interesting to them. There is plenty of 
 manpower willing to do the work, but at this point there are 
 useless conversations on the mailing list because nobody has 
 authority to make decisions, so nothing will come of those 
 conversations.
I've had a number of answers to your framing lack of work on dub as a leadership problem. Deleted them all after chatting with a friend for a couple of hours. Let me just point it that at a certain level you are definitely right - that dub has problem _is_ a leadership problem. The trick is figuring out what the level is. Sönke Ludwig is the point of contact for Dub according to https://wiki.dlang.org/People. He, Martin, and Seb have had as much decision power as they wanted to with that project. Walter and I have accepted to integrate dub with the distribution after much insistence under an implied social contract that has since decayed. This seems like a very important project to you, so I would be glad to grant you, bachmeier, full decision power with dub and update the points of contact appropriately. This is not cheeky - I am serious. Please advise.
If you'd like, I will be happy to help out by summarizing Dub complaints that have been posted on the mailing list and collecting additional complaints and proposed solutions. I can follow the DIP model we have in place. Once things are organized (as opposed to random comments by random people on the mailing list) those who are able and willing to do the work can make the decisions. I have no formal CS background and no commercial development experience, and haven't used Dub much after giving up in frustration, so I would not be the right person to make these decisions.
Apr 22 2019
next sibling parent tester <tester aol.com> writes:
On Monday, 22 April 2019 at 13:11:44 UTC, bachmeier wrote:
 If you'd like, I will be happy to help out by summarizing Dub 
 complaints that have been posted on the mailing list and 
 collecting additional complaints and proposed solutions. I can 
 follow the DIP model we have in place. Once things are 
 organized (as opposed to random comments by random people on 
 the mailing list) those who are able and willing to do the work 
 can make the decisions. I have no formal CS background and no 
 commercial development experience, and haven't used Dub much 
 after giving up in frustration, so I would not be the right 
 person to make these decisions.
don't forget all the things about D.
Apr 22 2019
prev sibling parent reply Seb <seb wilzba.ch> writes:
On Monday, 22 April 2019 at 13:11:44 UTC, bachmeier wrote:
 On Friday, 19 April 2019 at 17:58:24 UTC, Andrei Alexandrescu 
 wrote:
 [...]
If you'd like, I will be happy to help out by summarizing Dub complaints that have been posted on the mailing list and collecting additional complaints and proposed solutions. I can follow the DIP model we have in place. Once things are organized (as opposed to random comments by random people on the mailing list) those who are able and willing to do the work can make the decisions. I have no formal CS background and no commercial development experience, and haven't used Dub much after giving up in frustration, so I would not be the right person to make these decisions.
Submitting a DIP with the proposed changes would be very welcomed. I'm happy to assist you with it. Just ping me on the DIP PR.
Apr 22 2019
parent reply bachmeier <no spam.net> writes:
On Monday, 22 April 2019 at 16:43:56 UTC, Seb wrote:

 Submitting a DIP with the proposed changes would be very 
 welcomed. I'm happy to assist you with it. Just ping me on the 
 DIP PR.
I have created a Github repo and added you as a collaborator. I will work on this as I have time.
Apr 22 2019
parent Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 4/22/19 1:34 PM, bachmeier wrote:
 On Monday, 22 April 2019 at 16:43:56 UTC, Seb wrote:
 
 Submitting a DIP with the proposed changes would be very welcomed. I'm 
 happy to assist you with it. Just ping me on the DIP PR.
I have created a Github repo and added you as a collaborator. I will work on this as I have time.
Awesome you guys. Thank you!
Apr 22 2019
prev sibling parent reply "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Fri, Apr 19, 2019 at 02:28:26PM +0000, burjui via Digitalmars-d wrote:
[...]
 There should not be 3 different compilers, all managed by different
 parts of the community.
[...] Sorry, I find this statement outright ridiculous. In the past, we had only 1 compiler, and the doomsayers complained that D only has 1 compiler, seeing it as proof that D is niche and not worthy of attention -- because otherwise compiler writers would be falling over themselves to write implementations of the language and producing multiple compilers for it. Now that we have 3 compilers, the doomsayers complain that we should only have 1 compiler, and see having 3 compilers as proof that something is wrong. So who are we supposed to listen to?! If we go back to having only 1 compiler now, I'll bet the next naysayer would drop by and say that having only 1 compiler is proof that D is dead. Ridiculous, I say. Utterly ridiculous. D does have its problems, I'm not gonna whitewash that. But this 1 compiler vs. many compilers thing has *nothing* to do with it, and is completely ridiculous, even illogical. T -- Never wrestle a pig. You both get covered in mud, and the pig likes it.
Apr 19 2019
parent reply JN <666total wp.pl> writes:
On Friday, 19 April 2019 at 21:37:14 UTC, H. S. Teoh wrote:
 Sorry, I find this statement outright ridiculous.  In the past, 
 we had only 1 compiler, and the doomsayers complained that D 
 only has 1 compiler, seeing it as proof that D is niche and not 
 worthy of attention -- because otherwise compiler writers would 
 be falling over themselves to write implementations of the 
 language and producing multiple compilers for it.  Now that we 
 have 3 compilers, the doomsayers complain that we should only 
 have 1 compiler, and see having 3 compilers as proof that 
 something is wrong.
Well, depends on which compiler is the only one. In the past it was DMD, and well, DMD has it's benefits, but it's codegen is not the greatest and it was attached to OPTLINK for way too long, causing a lot of headaches. It's easy to see why would people criticize it. If the LDC was the only compiler, I don't think people would complain as much (based on popular 'compiler framework', crossplatform, great codegen).
Apr 19 2019
next sibling parent reply "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Sat, Apr 20, 2019 at 06:34:17AM +0000, JN via Digitalmars-d wrote:
 On Friday, 19 April 2019 at 21:37:14 UTC, H. S. Teoh wrote:
 Sorry, I find this statement outright ridiculous.  In the past, we
 had only 1 compiler, and the doomsayers complained that D only has 1
 compiler, seeing it as proof that D is niche and not worthy of
 attention -- because otherwise compiler writers would be falling
 over themselves to write implementations of the language and
 producing multiple compilers for it.  Now that we have 3 compilers,
 the doomsayers complain that we should only have 1 compiler, and see
 having 3 compilers as proof that something is wrong.
Well, depends on which compiler is the only one. In the past it was DMD, and well, DMD has it's benefits, but it's codegen is not the greatest and it was attached to OPTLINK for way too long, causing a lot of headaches. It's easy to see why would people criticize it. If the LDC was the only compiler, I don't think people would complain as much (based on popular 'compiler framework', crossplatform, great codegen).
I understand that -- I myself am none too pleased with dmd's codegen quality, and regularly advise people to use LDC or GDC if they're worried about performance. But what I don't understand is how having multiple compilers for a language is construed to be a bad thing. Back in the day, it was considered a sign of language maturity that multiple compiler implementers would even want to bother to produce their own compilers for your language. It was when nobody else cared enough to write their own compilers for your language, that was a sign that you've failed to become relevant. To see the opposite being argued just boggles my mind. T -- I think Debian's doing something wrong, `apt-get install pesticide', doesn't seem to remove the bugs on my system! -- Mike Dresser
Apr 19 2019
next sibling parent Arjan <arjan ask.me.to> writes:
On Saturday, 20 April 2019 at 06:48:31 UTC, H. S. Teoh wrote:
 On Sat, Apr 20, 2019 at 06:34:17AM +0000, JN via Digitalmars-d 
 wrote:
 On Friday, 19 April 2019 at 21:37:14 UTC, H. S. Teoh wrote:
 Sorry, I find this statement outright ridiculous.  In the
Me too. Looking back +20 years, the heydays of OO and C/C++ there were a multitude of compilers available: - Microsoft - Borland - Zortech/Symantec - Watcom - CodeWarrior - IBM VisualAge - Kuck & Associates, Inc - Comeau - HP aC++ - GCC - etc etc etc The source-code was absolutely not portable between them! Why not? STL was one big havoc creating issue. There were many differentiating implementations, so much there was even a commercial software suite to test them for conformance! These must have really killed the C++ language right? NO: C++ is kicking pythons but in popularity rise last year: https://www.techrepublic.com/article/most-popular-programming-languages-c-knocks-python-out-of-top-three/
 But what I don't understand is how having multiple compilers 
 for a language is construed to be a bad thing.  Back in the 
 day, it was considered a sign of language maturity that 
 multiple compiler implementers would even want to bother to 
 produce their own compilers for your language.  It was when 
 nobody else cared enough to write their own compilers for your 
 language, that was a sign that you've failed to become 
 relevant.  To see the opposite being argued just boggles my 
 mind.
Mine too.
Apr 20 2019
prev sibling parent reply Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On Saturday, 20 April 2019 at 06:48:31 UTC, H. S. Teoh wrote:
 But what I don't understand is how having multiple compilers 
 for a language is construed to be a bad thing.
Agreed. If anything it seems more of a problem that, while we have multiple compilers, they're all based on the same frontend and library implementations. Having a true 3rd-party implementation would be a real test of the maturity of the language and its spec. Which reminds me, I really ought to re-inform myself of the state of SDC ...
Apr 20 2019
parent Walter Bright <newshound2 digitalmars.com> writes:
On 4/20/2019 2:55 AM, Joseph Rushton Wakeling wrote:
 Agreed.  If anything it seems more of a problem that, while we have multiple 
 compilers, they're all based on the same frontend and library implementations.
 
 Having a true 3rd-party implementation would be a real test of the maturity of 
 the language and its spec.
Many of the different C++ compilers were based on the same front end, usually Edison Design Group's.
Apr 20 2019
prev sibling parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Saturday, 20 April 2019 at 06:34:17 UTC, JN wrote:
 If the LDC was the only compiler, I don't think people would 
 complain as much (based on popular 'compiler framework', 
 crossplatform, great codegen).
I'm pretty sure Iain would =P But seriously though, in light of the recent MLIR keynote at EuroLLVM (really worth a watch if you're into compilers) I'm beginning to see the addition of more layers of IR as a tradeoff between time spent compiling and and runtime performance and so I see DMD as a useful -O0 ("No" IR) and then LDC as a useful -O{1,2,3} with LLVM IR, and hopefully in the future LDC + a D MLIR dialect ( / the various LinAlg ones) for -O3+ where every drop of perf matters. I'll definitely be looking into doing some MLIR suff at some point, its a pity that GSOC is so close, I would have loved to put forward a project outline on it. Oh well maybe next year.
Apr 20 2019
parent reply Iain Buclaw <ibuclaw gdcproject.org> writes:
On Sat, 20 Apr 2019 at 23:05, Nicholas Wilson via Digitalmars-d
<digitalmars-d puremagic.com> wrote:
 On Saturday, 20 April 2019 at 06:34:17 UTC, JN wrote:
 If the LDC was the only compiler, I don't think people would
 complain as much (based on popular 'compiler framework',
 crossplatform, great codegen).
I'm pretty sure Iain would =P
If only because I've never gotten LDC to work. :-P (Nor do I have reason to believe it's been given much testing beyond x86/64, despite a good breadth of OS support). -- Iain
Apr 21 2019
parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Sunday, 21 April 2019 at 07:10:38 UTC, Iain Buclaw wrote:
 On Sat, 20 Apr 2019 at 23:05, Nicholas Wilson via Digitalmars-d 
 <digitalmars-d puremagic.com> wrote:
 On Saturday, 20 April 2019 at 06:34:17 UTC, JN wrote:
 If the LDC was the only compiler, I don't think people would 
 complain as much (based on popular 'compiler framework', 
 crossplatform, great codegen).
I'm pretty sure Iain would =P
If only because I've never gotten LDC to work. :-P
It should work out of the box, if it doesn't please file a bug report.
 (Nor do I have reason to believe it's been given much testing 
 beyond x86/64, despite a good breadth of OS support).
I used it for my honours thesis on RasPi3b+ with Raspian so it definitely works on ARM. OpenCL and CUDA also work. Never tried on MIPS, PPC or AArch64.
Apr 21 2019
next sibling parent reply Iain Buclaw <ibuclaw gdcproject.org> writes:
On Sun, 21 Apr 2019 at 09:40, Nicholas Wilson via Digitalmars-d
<digitalmars-d puremagic.com> wrote:
 On Sunday, 21 April 2019 at 07:10:38 UTC, Iain Buclaw wrote:
 On Sat, 20 Apr 2019 at 23:05, Nicholas Wilson via Digitalmars-d
 <digitalmars-d puremagic.com> wrote:
 On Saturday, 20 April 2019 at 06:34:17 UTC, JN wrote:
 If the LDC was the only compiler, I don't think people would
 complain as much (based on popular 'compiler framework',
 crossplatform, great codegen).
I'm pretty sure Iain would =P
If only because I've never gotten LDC to work. :-P
It should work out of the box, if it doesn't please file a bug report.
 (Nor do I have reason to believe it's been given much testing
 beyond x86/64, despite a good breadth of OS support).
I used it for my honours thesis on RasPi3b+ with Raspian so it definitely works on ARM. OpenCL and CUDA also work. Never tried on MIPS, PPC or AArch64.
Right, by the way it's currently the opposite for GDC. There's around 26 or more different CPU architectures tested, but only all on Linux. As no one else will, I'm in the middle of building on FreeBSD, NetBSD, OpenBSD, Solaris, and DragonflyBSD in parallel and will enable phobos support for those targets shortly. Darwin, Cygwin and MinGW will likely only be partial in gdc-9, unless there's a solution for GC scanning of emulated TLS data found in time. :-) In that list, FreeBSD, NetBSD, and OpenBSD will need some serious work in D runtime, for the same reasons as what we discovered on Solaris/SPARC. There's lots of i.e: `version (FreeBSD)` in the extern(C) bindings, but what is really meant is `version (FreeBSD) { version (X86) ... }`. However if core.stdc and core.sys were generated from system headers, then there would be no problems whatsoever. -- Iain
Apr 21 2019
parent Walter Bright <newshound2 digitalmars.com> writes:
On 4/21/2019 1:47 AM, Iain Buclaw wrote:
 As no one else will, I'm in the middle of building on FreeBSD, NetBSD,
 OpenBSD, Solaris, and DragonflyBSD in parallel and will enable phobos
 support for those targets shortly.
This is great news, thank you!
Apr 21 2019
prev sibling parent Patrick Schluter <Patrick.Schluter bbox.fr> writes:
On Sunday, 21 April 2019 at 07:35:34 UTC, Nicholas Wilson wrote:
 On Sunday, 21 April 2019 at 07:10:38 UTC, Iain Buclaw wrote:
 On Sat, 20 Apr 2019 at 23:05, Nicholas Wilson via 
 Digitalmars-d <digitalmars-d puremagic.com> wrote:
 On Saturday, 20 April 2019 at 06:34:17 UTC, JN wrote:
 If the LDC was the only compiler, I don't think people 
 would complain as much (based on popular 'compiler 
 framework', crossplatform, great codegen).
I'm pretty sure Iain would =P
If only because I've never gotten LDC to work. :-P
It should work out of the box, if it doesn't please file a bug report.
 (Nor do I have reason to believe it's been given much testing 
 beyond x86/64, despite a good breadth of OS support).
I used it for my honours thesis on RasPi3b+ with Raspian so it definitely works on ARM. OpenCL and CUDA also work. Never tried on MIPS, PPC or AArch64.
I also have it running on my Helios4 NAS, which is Armbian on an Marvell ARMADA® 388 ARM CPU. I built the compiler from scratch to test bootstrapping. Worked without problems. I still didn't manage to get DWT to work but that is more a problem of the Helios4 that does not have a graphical user interface by default, which is logical as the unit does not have a graphical output.
Apr 21 2019
prev sibling next sibling parent bioinfornatics <bioinfornatics fedoraproject.org> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 Sorry for that title, but this is something I have been 
 thinking about for a while...

 I honestly feel like D is a failure. I kinda just wanted to 
 vent about it and see what other people think.

 I have been using D since around 2012 or 2013, instantly fell 
 in love, use to post on the forms a lot under the name Tofu 
 Ninja. I was convinced D was the future but since then I have 
 become disheartened. The biggest thing that makes me feel like 
 this is that in the 7 years I have been using D I literally 
 have never met another programmer IRL who has even heard of it. 
 I put on my resume that I like D and every interview I get 
 asked about it, having to explain what D even is because they 
 have never heard of it. I have never seen a job posting listing 
 D. Never see any projects pop up on /r/programming using D. It 
 feels like to the rest of the programming universe, D doesn't 
 even exist. Sometimes I see threads on reddit like "what's your 
 favorite programming language" and I always look for D but 
 never find it.

 And honestly I don't think that is going to change. I feel like 
 D has failed.

 I duno... what do yall think? Is D going to somehow explode in 
 popularity in 5-10 years? Am I missing some part of the 
 picture? Or am I right and if so what can be done about it?
D is great language it now not a young old. We know all what D are missing to be great, globally we see the trend of the industry which is focus on feature from libraries and framework: - to be secure - to generate easily a web app with micro-architecture (see jhipster) - create easily a web app (see the success of ruby they are some years ago and now python through Django, Flask …) - to be efficient and middle/high level (see Spark, and for statistician/datalake user tools like zeppelin which make beautiful graphic form a datalake) - to be able to use a powerful deeplearning library even if you are low in programming skills (see tensorflow, keras and other) - to be shareable easily (what about to have a builder able to generate a container automatically , that save user time so they like it) I agree now that D have failed on many way: - Dmd hast started with something like than some pieces of code was not totally free -> imply bad buzz and increased the sense of rejection from c++ community - D1 to D2 was again a disaster -> implying again a bad buzz and increased the sense of rejection from c++ community -> Dub could be good but I do not like it as a fedorapackager and has a packager for a HPC center. Dub do not support staged build which is a standard and it is hard to work with it in a offline environment -> D intellisense is not easy to enable from IDE as we have to build several tools to get it -> multiple compiler dmd, ldc is now seen as a waste of time from a non-D community
Apr 20 2019
prev sibling parent reply Greatsam4sure <greatsam4sure gmail.com> writes:
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu Kaitlyn wrote:
 Sorry for that title, but this is something I have been 
 thinking about for a while...

 [...]
On Friday, 12 April 2019 at 07:35:05 UTC, Tofu K This is a user testimony of D https://medium.com/tripaneer-techblog/why-we-chose-the-d-language-and-vibe-d-3684131a71cd
Apr 24 2019
parent reply Chris <wendlec tcd.ie> writes:
On Thursday, 25 April 2019 at 00:28:41 UTC, Greatsam4sure wrote:
 On Friday, 12 April 2019 at 07:35:05 UTC, Tofu K
 This is a user testimony of D


 https://medium.com/tripaneer-techblog/why-we-chose-the-d-language-and-vibe-d-3684131a71cd
Sorry, but same could be said about other languages that have better tooling and community support. With the important difference that those other languages will not blow up in your face due to the maintainers fiddling around with new features. As regards maintenance, with D I used to lose a lot of time fixing my code from one compiler version to the next (what a waste of time) or trying to figure out what would be the best way to work around D's messy string handling and how it would affect both the performance and the flow / logic of the program. Again, Tripaneer seems to use D only for one specific purpose, so it's a niche application that says nothing about D's _general_ usefulness. You can write a great program for one particular purpose in Lisp too and go on about how great it is. That says nothing about how you will fare once you leave your bubble. I started to use D for a very specific purpose, because back in the day D was the only language that offered what I needed (e.g. seamless C interop + DLL support, reasonably fast native code). We were a bit pressed for time, so D was the best option. However, once the whole thing grew bigger and we had to leave the bubble to cater for mobile for example, things no longer looked so bright, and DIY is not an option for everyone (due to lack of time / resources / expertise). It's as if D sold you a multi-purpose toolkit that only works at room temperature. And of course, there's the paradox that the better you get at D, the more you know about programming, the more you know about programming, the more you notice that D is poorly implemented. BTW: Maybe change the copyright notice to 2019. Now it says: "Copyright © 1999-2018 by the D Language Foundation" ;)
Apr 25 2019
next sibling parent reply Andre Pany <andre s-e-a-p.de> writes:
On Thursday, 25 April 2019 at 11:27:53 UTC, Chris wrote:
 On Thursday, 25 April 2019 at 00:28:41 UTC, Greatsam4sure wrote:
 [...]
Sorry, but same could be said about other languages that have better tooling and community support. With the important difference that those other languages will not blow up in your face due to the maintainers fiddling around with new features. As regards maintenance, with D I used to lose a lot of time fixing my code from one compiler version to the next (what a waste of time) or trying to figure out what would be the best way to work around D's messy string handling and how it would affect both the performance and the flow / logic of the program. Again, Tripaneer seems to use D only for one specific purpose, so it's a niche application that says nothing about D's _general_ usefulness. You can write a great program for one particular purpose in Lisp too and go on about how great it is. That says nothing about how you will fare once you leave your bubble. [...]
It would be great if you can provide constructive feedback with detailed points we can work on. What issues do you have while updating dmd version? What is poorly implemented in your opinion? If you help us, we can help you. Kind regards Andre
Apr 25 2019
parent reply Chris <wendlec tcd.ie> writes:
On Thursday, 25 April 2019 at 17:12:55 UTC, Andre Pany wrote:
 It would be great if you can provide constructive feedback with 
 detailed points we can work on.
 What issues do you have while updating dmd version? What is 
 poorly implemented in your opinion?

 If you help us, we can help you.

 Kind regards
 Andre
See, this is a common pattern here too. There are so many things wrong with D that one does not know where to start, but when you criticize the language or rather its management, you are asked (under the guise of "constructive criticism") to provide a detailed list of things to be fixed. This ain't but a smoke screen, nobody can do that. Its only purpose is to make the poster look bad and incompetent. Indeed, there are some poor souls who actually take the bait and make PRs or compile a list of bugs / errors etc....and then nothing happens. I really don't remember all the errors and warnings I got with dmd updates over the years (including third party libraries). However, I have raised points about string handling and autodecode here several times, but to no avail (go and search for it), I ain't gonna repeat that. Just one thing: for several dmd versions I had to use "-allinst", else my code wouldn't compile. Then all of a sudden, my code wouldn't compile with "-allinst" and it was only on a hunch that I removed the flag from dub.json. WTF? What's the story with those weird semi-constructors without semi-destructors? Don't tell me that nobody could foresee that (hello: constructor/deconstructor). What about autodecode? The thing is that D doesn't even get the basics right. It has to be rewritten from scratch, same as a script you hacked together and that turned into something bigger. Take the good bits, but rewrite it in a clean way.
Apr 26 2019
parent Bastiaan Veelo <Bastiaan Veelo.net> writes:
On Friday, 26 April 2019 at 09:58:00 UTC, Chris wrote:
 Take the good bits, but rewrite it in a clean way.
The sentiment towards that is growing. Bastiaan.
Apr 26 2019
prev sibling next sibling parent Jack Applegame <japplegame gmail.com> writes:
On Thursday, 25 April 2019 at 11:27:53 UTC, Chris wrote:
 And of course, there's the paradox that the better you get at 
 D, the more you know about programming, the more you know about 
 programming, the more you notice that D is poorly implemented.
It's not a paradox, it's an axiom. I can say exactly the same about C++, Ruby, PHP and JavaScript.
Apr 25 2019
prev sibling parent reply Bastiaan Veelo <Bastiaan Veelo.net> writes:
On Thursday, 25 April 2019 at 11:27:53 UTC, Chris wrote:
 As regards maintenance, with D I used to lose a lot of time 
 fixing my code from one compiler version to the next (what a 
 waste of time)
If you think it was a waste of time, you could just have continued without updating. All releases are still there. http://downloads.dlang.org/releases/ Bastiaan.
Apr 25 2019
next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/25/2019 1:01 PM, Bastiaan Veelo wrote:
 If you think it was a waste of time, you could just have continued without 
 updating. All releases are still there. http://downloads.dlang.org/releases/
True enough. With other products, I don't upgrade them until there's a good reason to. Saves a lot of effort.
Apr 25 2019
next sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Thu, Apr 25, 2019 at 10:01:20PM -0700, Walter Bright via Digitalmars-d wrote:
 On 4/25/2019 1:01 PM, Bastiaan Veelo wrote:
 If you think it was a waste of time, you could just have continued
 without updating. All releases are still there.
 http://downloads.dlang.org/releases/
True enough. With other products, I don't upgrade them until there's a good reason to. Saves a lot of effort.
More than once I've been bitten by software upgrades that either outright stop compiling or working with existing code, or break existing code in subtle but unacceptable ways that are unfixable because they are caused by fundamental changes that upstream will unlikely ever want to revert. These days, I've come to prefer just embedding the exact version of the source code I depend on in my workspace, either checked in as part of the source tree or as a git submodule (that ensures exactly the correct version), and building everything manually. That, or write my own code and rid myself of too many external dependencies that are likely to go sour without any warning when upstream decides to be "helpful" and break something that used to work fine. Of course, that's speaking from the receiving end of things. From an upstream standpoint, sometimes breaking changes are good, and necessary. IMNSHO D should not be so paranoid as to avoid changes at all. A language that stops improving is a dead one. As Andrei recently said, the trick is addition rather than replacement. Keep the old backward compatible stuff around, possibly undocumented, or moved to some archival repo like UndeaD, but still there to keep existing code happy, and add new stuff like std.v2 to keep the good things flowing into the language. As long as it's *possible* to replicate the older behaviour somehow without onerous effort, I think it's fair game. And of course, when all else fails, older versions of dmd are still available on the download page. T -- Elegant or ugly code as well as fine or rude sentences have something in common: they don't depend on the language. -- Luca De Vitis
Apr 25 2019
prev sibling parent Arun Chandrasekaran <aruncxy gmail.com> writes:
On Thu, Apr 25, 2019 at 10:05 PM Walter Bright via Digitalmars-d
<digitalmars-d puremagic.com> wrote:
 On 4/25/2019 1:01 PM, Bastiaan Veelo wrote:
 If you think it was a waste of time, you could just have continued without
 updating. All releases are still there. http://downloads.dlang.org/releases/
True enough. With other products, I don't upgrade them until there's a good reason to. Saves a lot of effort.
May be people upgrade as a way to fix the regression bugs and end up getting new features that introduces new regressions/bugs? There are no releases that target _bug fixes only_. That brings up another point about LTS, development branch and stable branch. Bug fixes shall only be done on the stable branch and the new features on the development branch. Stable branch can be merged periodically with development branch and not the other way.
Apr 25 2019
prev sibling parent reply Chris <wendlec tcd.ie> writes:
On Thursday, 25 April 2019 at 20:01:29 UTC, Bastiaan Veelo wrote:
 On Thursday, 25 April 2019 at 11:27:53 UTC, Chris wrote:
 As regards maintenance, with D I used to lose a lot of time 
 fixing my code from one compiler version to the next (what a 
 waste of time)
If you think it was a waste of time, you could just have continued without updating. All releases are still there. http://downloads.dlang.org/releases/ Bastiaan.
Now tell me, how am I to profit from bug fixes and other improvements? Well, sure, we could all stick to D1 but what's the point then? The answer is _always_ the same here, "If you want stability stick to an outdated version of dmd", but "if you want feature X fixed, use the latest version of dmd, it's much more stable now!". C'mon, give me a break. Other technologies have caught up with D in many respects and there's no reason to keep on putting up with D's chaos. All you guys will have left to say is "But D had it first" - so what?
Apr 26 2019
parent reply Bastiaan Veelo <Bastiaan Veelo.net> writes:
On Friday, 26 April 2019 at 09:42:59 UTC, Chris wrote:
 On Thursday, 25 April 2019 at 20:01:29 UTC, Bastiaan Veelo 
 wrote:
 On Thursday, 25 April 2019 at 11:27:53 UTC, Chris wrote:
 As regards maintenance, with D I used to lose a lot of time 
 fixing my code from one compiler version to the next (what a 
 waste of time)
If you think it was a waste of time, you could just have continued without updating. All releases are still there. http://downloads.dlang.org/releases/ Bastiaan.
Now tell me, how am I to profit from bug fixes and other improvements?
If there is profit, it isn't a complete waste. My point is: the decision whether the cost of adapting to deprecations is worth the benefit of upgrading is yours. If you think it was a net waste, you made the wrong decision. We are porting half a million lines of code from a language that we are abandoning. Was it a waste to use that language? Not at all, we made quite a profit. Are we expecting the port to be profitable? Of course we do. Will we be welcoming future deprecations? Yes, because the long term benefits outweigh the short term annoyances. We want to port to a living language, and deprecations are part of life! Bastiaan.
Apr 26 2019
parent reply Chris <wendlec tcd.ie> writes:
On Friday, 26 April 2019 at 11:48:20 UTC, Bastiaan Veelo wrote:
 If there is profit, it isn't a complete waste. My point is: the 
 decision whether the cost of adapting to deprecations is worth 
 the benefit of upgrading is yours. If you think it was a net 
 waste, you made the wrong decision.
Sooner or later you have to upgrade, the longer you wait the more painful it becomes, I've been there. It's no longer as bad as it used to be, though. My point was: to fight with deprecations, warnings and errors is not something you should have to "invest" in with every new version of dmd.
 We are porting half a million lines of code from a language 
 that we are abandoning. Was it a waste to use that language? 
 Not at all, we made quite a profit. Are we expecting the port 
 to be profitable? Of course we do. Will we be welcoming future 
 deprecations? Yes, because the long term benefits outweigh the 
 short term annoyances. We want to port to a living language, 
 and deprecations are part of life!

 Bastiaan.
Same here as I'm porting my D code to a different language...
Apr 26 2019
parent reply Seb <seb wilzba.ch> writes:
On Friday, 26 April 2019 at 15:05:48 UTC, Chris wrote:
 On Friday, 26 April 2019 at 11:48:20 UTC, Bastiaan Veelo wrote:
 [...]
Sooner or later you have to upgrade, the longer you wait the more painful it becomes, I've been there. It's no longer as bad as it used to be, though. My point was: to fight with deprecations, warnings and errors is not something you should have to "invest" in with every new version of dmd.
 [...]
Same here as I'm porting my D code to a different language...
Except that Bastiaan's company is porting their codebase to D IIRC.
Apr 26 2019
parent reply Bastiaan Veelo <Bastiaan Veelo.net> writes:
On Friday, 26 April 2019 at 15:26:23 UTC, Seb wrote:
 Except that Bastiaan's company is porting their codebase to D 
 IIRC.
Indeed. There’ll be more about that at DConf: http://dconf.org/2019/talks/veelo.html Bastiaan.
Apr 26 2019
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 4/26/2019 12:06 PM, Bastiaan Veelo wrote:
 On Friday, 26 April 2019 at 15:26:23 UTC, Seb wrote:
 Except that Bastiaan's company is porting their codebase to D IIRC.
Indeed. There’ll be more about that at DConf: http://dconf.org/2019/talks/veelo.html
Looking forward to it! BTW, the dmd source code was ported from C++ to D, and a sweet improvement it was, too.
Apr 26 2019
parent Chris <wendlec tcd.ie> writes:
On Friday, 26 April 2019 at 22:31:40 UTC, Walter Bright wrote:
 On 4/26/2019 12:06 PM, Bastiaan Veelo wrote:
 On Friday, 26 April 2019 at 15:26:23 UTC, Seb wrote:
 Except that Bastiaan's company is porting their codebase to D 
 IIRC.
Indeed. There’ll be more about that at DConf: http://dconf.org/2019/talks/veelo.html
Looking forward to it! BTW, the dmd source code was ported from C++ to D, and a sweet improvement it was, too.
Porting code is often beneficial because a. languages / technologies improve and b. you get a chance to do things better.
Apr 27 2019