digitalmars.D - D easily overlooked?
- Wulfklaue (26/26) Jul 14 2017 https://blog.sourced.tech/post/language_migrations/
- Stefan Koch (6/11) Jul 14 2017 The beauty of D lies in it's holistic approach.
- Wulfklaue (22/27) Jul 14 2017 CTFE is indeed unique but is it a selling point where people will
- Joakim (27/56) Jul 14 2017 Yes, D's compile-time regex are still the fastest in the world.
- Martin Tschierschke (3/10) Jul 14 2017 Off topic - but do you know this https://lilium.com/ :-)
- Adrian Matoga (8/20) Jul 21 2017 Interesting. A few months ago I wanted to sell ctRegex as the
- Joakim (10/32) Jul 21 2017 The boost C++ benchmark run in the link I gave says it's more
- Seb (7/29) Jul 21 2017 We disabled the Kickstart engine temporarily as there where
- thinwybk (6/18) Sep 02 2017 Do you plan to implement a version for the fastest benchmark
- Enamex (7/20) Jul 14 2017 There's Red: http://red-lang.org (to my understanding, you can
- bpr (7/10) Jul 14 2017 CTFE is found in Nim, as well as inline assembler. Relatively
- Moritz Maxeiner (10/18) Jul 14 2017 Small initial community + no one paying for viral marketing will
- Wulfklaue (10/13) Jul 14 2017 Heuuu?
- Petar Kirov [ZombineDev] (10/23) Jul 14 2017 I think he meant System (!= Native). E.g. none of the languages
- Moritz Maxeiner (6/17) Jul 14 2017 Third party project that supports only a subset (albeit a large
- Andrew Chapman (44/70) Jul 14 2017 I agree with the others that having no major company behind DLang
- Moritz Maxeiner (11/17) Jul 14 2017 The primary issue isn't what *can* be done, but what *is going*
- Ecstatic Coder (29/42) Jul 16 2017 +1
- Emil (16/18) Jul 14 2017 Are you aware this is a github infomercial ? That is how
- aberba (11/19) Jul 14 2017 Maybe you havent't looked enough. I blog about D (basic stuff) at
- Ecstatic Coder (19/21) Jul 16 2017 I couldn't say it better...
- Joakim (28/40) Jul 16 2017 Then maybe D is not the right language for you, at least not yet.
- Ecstatic Coder (17/17) Jul 16 2017 I'm already following both of your advices.
- Mark (8/34) Jul 15 2017 Well, at one point Andrei said that what is missing to make D's
- Russel Winder via Digitalmars-d (18/24) Jul 15 2017 Java has IBM, Oracle, Red Hat, many companies, and the JCP
- Joakim (20/36) Jul 15 2017 Sociomantic, Weka, EMSI, and a handful of others. None is as
- aberba (3/16) Jul 15 2017 Who is building the killer app?
- Joakim (10/28) Jul 15 2017 Maybe it's Weka?
- Ecstatic Coder (52/53) Jul 16 2017 Why do you need a killer app ?
- solidstate1991 (3/18) Jul 19 2017 So this is what Andrei meant when he once mentioned D's
- Wulfklaue (34/39) Jul 20 2017 After going back recently to good old Pascal. More specific the
- solidstate1991 (23/24) Jul 19 2017 The problem with a killer app is that it needs multiple teams to
- Mark (2/8) Jul 15 2017 Point taken. :)
- Adam D. Ruppe (5/6) Jul 15 2017 D has me.
- aedt (4/9) Jul 22 2017 Unless some miracle happens and makes the GC better by preventing
- Russel Winder via Digitalmars-d (18/22) Jul 22 2017 D without the GC isn't at all interesting, might as well use Go in that
- Timon Gehr (2/4) Jul 22 2017 Uh, no.
- aedt (3/8) Jul 22 2017 Go people are also trying to make their GC pretty fast afaik
- Russel Winder via Digitalmars-d (13/23) Jul 23 2017 I believe they are their third or fourth already. Java and Go
- Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= (5/10) Jul 24 2017 Those languages were of course designed within the restrictions
- Russel Winder via Digitalmars-d (19/27) Jul 24 2017 On Mon, 2017-07-24 at 10:07 +0000, Ola Fosheim Gr=C3=B8stad via Digitalm...
- Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= (18/22) Jul 24 2017 The D memory model is still in flux and always allowed C-like
- Ali (5/13) Jul 24 2017 I am obviously not a language design or implementation expert,
- Seb (2/17) Jul 24 2017 http://www.infognition.com/blog/2014/the_real_problem_with_gc_in_d.html
- Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= (10/13) Jul 24 2017 Many things are possible if you put enough constraints on the
- Russel Winder via Digitalmars-d (20/26) Jul 25 2017 On Mon, 2017-07-24 at 12:47 +0000, Ola Fosheim Gr=C3=B8stad via Digitalm...
- Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= (13/18) Jul 25 2017 Well, most languages have little hope for traction :-). Traction
- Neia Neutuladh (3/8) Jul 25 2017 While Elm and Kotlin get a decent amount of press, Dart is
- Moritz Maxeiner (8/11) Jul 22 2017 I have yet to see a (working, correct) non-STW GC that doesn't
- Ali (7/18) Jul 22 2017 Ocaml comes to mind, it is being used bu jane street for high
- Moritz Maxeiner (6/28) Jul 22 2017 Ocaml's GC is stop-the-world for both its minor and major heap
- Bienlein (19/25) Jul 25 2017 Well, on the Tiobe index D is currently on place 23 way ahead of
- Wulfklaue (72/87) Jul 26 2017 I noticed the issues for me is going beyond just the language.
- Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= (15/25) Jul 26 2017 Once upon a time D claimed to be a cleaned up and more convenient
- kinke (14/16) Jul 26 2017 People need to eventually understand that all the energy wasted
- Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= (5/8) Jul 26 2017 Value is relative. So, if you don't use a tool in production why
- Ali (23/32) Jul 26 2017 Well, D now have a Improvement Proposal system (DIP), the actual
- Ali (5/7) Jul 26 2017 DIP 9000, we need a real forum software,
- Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= (12/16) Jul 26 2017 I don't think anyone that don't use D in production worry about
- kinke (8/10) Jul 26 2017 My point was improving vs. complaining. Both take some analysis
- Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= (10/16) Jul 27 2017 Yeah, providing details about what failed so that others can
- Bienleine (13/50) Jul 29 2017 I think I understand what you mean. You have to take into account
https://blog.sourced.tech/post/language_migrations/ A recent article where github programming languages popularity and migration got analysed was very interesting but it showed one noticeable thing: A total lack of D even mentioned!!! When looking at other language ranking sites, D always scores better then Rust. Yet, Rust gets included in the ranking but D is ... nowhere to be seen. It gets even a bit annoying when its always Rust, Rust, Rust ... that keeps popping up. Seen it more and more how Rust is simply trampling over any D messaging. D... It really has no very unique feature that makes it noticeable. * no GC language that people can push until people there ears bleed ( Rust) * no really unique features that people care about to set it aside from C/C++, ... * It has the kitchen and sink but nobody talk about the kitchen and sink. I know people will jump onboard and start yelling how D has very unique features but from the "outside world" its always the same response. While more people are downloading D and trying it out, i barely see any independent D language blogs. Not to be a downer but D really in my eyes is missing that "unique" feature that people care about, that allows people to blog about the language...
Jul 14 2017
On Friday, 14 July 2017 at 08:57:17 UTC, Wulfklaue wrote:https://blog.sourced.tech/post/language_migrations/ A recent article where github programming languages popularity and migration got analysed was very interesting but it showed one noticeable thing: [...]The beauty of D lies in it's holistic approach. The one unique feature to point out would be CTFE which is not to be found in other compiled langauges. constexpr does not even come close since it cannot return literals :0
Jul 14 2017
On Friday, 14 July 2017 at 09:02:58 UTC, Stefan Koch wrote:The beauty of D lies in it's holistic approach. The one unique feature to point out would be CTFE which is not to be found in other compiled langauges. constexpr does not even come close since it cannot return literals :0CTFE is indeed unique but is it a selling point where people will talk about. Something that they will experience in there daily life and say, i can not live without that? Its part marketing, part unique features, part giving people confidence by having a big name attached to it. A lot of languages really are so much the same ( fast compiling, single deployment, multi platform, ... ), that it becomes harder to stand out with features that the end user cares about. Recently been doing a bit of Pascal programming. Ultra fast compiler, low memory usage ( No GC ), cross compiler with massive platforms support, there own cross platform GUI ( Lazarus ). And yet they have the same issue. Pascal does not stand out despite being a mature and easy fast, efficient language. But it did get included in that article ;) D is technically C++ replacement and yet, C++ has been losing massive market shares but D has not been enjoying much from that loss. Frankly, i am also a bit lost of ideas as to what can D stand out. Its almost like D is going to Pascal route. People use it, it great, but beyond the core audience, its hard to reach out to others.
Jul 14 2017
On Friday, 14 July 2017 at 09:29:27 UTC, Wulfklaue wrote:On Friday, 14 July 2017 at 09:02:58 UTC, Stefan Koch wrote:Yes, D's compile-time regex are still the fastest in the world. I've been benching it recently for a marketing-oriented blog post I'm preparing for the official D blog, std.regex beats out the top C and Rust entries from the benchmarks game on linux/x64 with a single core: http://benchmarksgame.alioth.debian.org/u64q/regexredux.html https://github.com/joakim-noah/regex-bench D comes in third on Android/ARM, but not far behind, suggesting it would still be third on that list if run with a bunch of other languages on mobile. Dmitry thinks it might be alignment issues, the bane of cross-platform, high-performance code on ARM, as he hasn't optimized his regex code for ARM.The beauty of D lies in it's holistic approach. The one unique feature to point out would be CTFE which is not to be found in other compiled langauges. constexpr does not even come close since it cannot return literals :0CTFE is indeed unique but is it a selling point where people will talk about. Something that they will experience in there daily life and say, i can not live without that?Its part marketing, part unique features, part giving people confidence by having a big name attached to it. A lot of languages really are so much the same ( fast compiling, single deployment, multi platform, ... ), that it becomes harder to stand out with features that the end user cares about. Recently been doing a bit of Pascal programming. Ultra fast compiler, low memory usage ( No GC ), cross compiler with massive platforms support, there own cross platform GUI ( Lazarus ). And yet they have the same issue. Pascal does not stand out despite being a mature and easy fast, efficient language. But it did get included in that article ;) D is technically C++ replacement and yet, C++ has been losing massive market shares but D has not been enjoying much from that loss. Frankly, i am also a bit lost of ideas as to what can D stand out. Its almost like D is going to Pascal route. People use it, it great, but beyond the core audience, its hard to reach out to others.The pitch is that you can write very fast code quickly and easily, and make it the fastest in the world if you spend some time profiling and optimizing. At the end, you'll have code that you can actually read easily and aren't scared to modify because you're not sure you understand how it works. And all this without struggling with C's primitive features or Rust's borrow checker. Is the dream fulfilled? No, D still has plenty of rough edges and gaping holes: https://issues.dlang.org/show_bug.cgi?id=17630 But with tech nowadays, you need a good foundational design before all else. Yes, someone else may get out of the gate faster with the bicycle they built out of spare parts, but once you get the Millenium Falcon going, it will blast by them. ;)
Jul 14 2017
On Friday, 14 July 2017 at 13:29:30 UTC, Joakim wrote:On Friday, 14 July 2017 at 09:29:27 UTC, Wulfklaue wrote:[...]On Friday, 14 July 2017 at 09:02:58 UTC, Stefan Koch wrote:The beauty of D lies in it's holistic approach.But with tech nowadays, you need a good foundational design before all else. Yes, someone else may get out of the gate faster with the bicycle they built out of spare parts, but once you get the Millenium Falcon going, it will blast by them. ;)Off topic - but do you know this https://lilium.com/ :-)
Jul 14 2017
On Friday, 14 July 2017 at 13:29:30 UTC, Joakim wrote:Yes, D's compile-time regex are still the fastest in the world. I've been benching it recently for a marketing-oriented blog post I'm preparing for the official D blog, std.regex beats out the top C and Rust entries from the benchmarks game on linux/x64 with a single core: http://benchmarksgame.alioth.debian.org/u64q/regexredux.html https://github.com/joakim-noah/regex-bench D comes in third on Android/ARM, but not far behind, suggesting it would still be third on that list if run with a bunch of other languages on mobile. Dmitry thinks it might be alignment issues, the bane of cross-platform, high-performance code on ARM, as he hasn't optimized his regex code for ARM.Interesting. A few months ago I wanted to sell ctRegex as the fastest one in a presentation, but in my benchmarks (based on [1]) I found it to be of equal speed or slower than boost::regex (LDC vs Clang). I've got to take a look at your benchmarks, and repeat mine to check again if I didn't mess something up. [1] http://lh3lh3.users.sourceforge.net/reb.shtml
Jul 21 2017
On Friday, 21 July 2017 at 13:25:32 UTC, Adrian Matoga wrote:On Friday, 14 July 2017 at 13:29:30 UTC, Joakim wrote:The boost C++ benchmark run in the link I gave says it's more than 10X slower than the top C one I found D to be faster than, so I didn't bother with it. Maybe you can speed it up: http://benchmarksgame.alioth.debian.org/u64q/program.php?test=regexredux&lang=gpp&id=3 As for your benchmark, I'd be surprised if ctRegex wouldn't beat out Boost given how well it does against the faster PCRE in the fasta-dna one I tried, but all these microbenchmarks only look at particular features of a full regex engine, so it's always possible ctRegex is slower in others.Yes, D's compile-time regex are still the fastest in the world. I've been benching it recently for a marketing-oriented blog post I'm preparing for the official D blog, std.regex beats out the top C and Rust entries from the benchmarks game on linux/x64 with a single core: http://benchmarksgame.alioth.debian.org/u64q/regexredux.html https://github.com/joakim-noah/regex-bench D comes in third on Android/ARM, but not far behind, suggesting it would still be third on that list if run with a bunch of other languages on mobile. Dmitry thinks it might be alignment issues, the bane of cross-platform, high-performance code on ARM, as he hasn't optimized his regex code for ARM.Interesting. A few months ago I wanted to sell ctRegex as the fastest one in a presentation, but in my benchmarks (based on [1]) I found it to be of equal speed or slower than boost::regex (LDC vs Clang). I've got to take a look at your benchmarks, and repeat mine to check again if I didn't mess something up. [1] http://lh3lh3.users.sourceforge.net/reb.shtml
Jul 21 2017
On Friday, 21 July 2017 at 13:50:24 UTC, Joakim wrote:On Friday, 21 July 2017 at 13:25:32 UTC, Adrian Matoga wrote:We disabled the Kickstart engine temporarily as there where issues with CTFE [1], this means that until newCTFE is out runtime will be faster in most cases and it won't perform nicely in benchmark. However, newCTFE is almost finished, and with a bit of luck we see it in master soon. [1] https://github.com/dlang/phobos/pull/4995On Friday, 14 July 2017 at 13:29:30 UTC, Joakim wrote:The boost C++ benchmark run in the link I gave says it's more than 10X slower than the top C one I found D to be faster than, so I didn't bother with it. Maybe you can speed it up: http://benchmarksgame.alioth.debian.org/u64q/program.php?test=regexredux&lang=gpp&id=3 As for your benchmark, I'd be surprised if ctRegex wouldn't beat out Boost given how well it does against the faster PCRE in the fasta-dna one I tried, but all these microbenchmarks only look at particular features of a full regex engine, so it's always possible ctRegex is slower in others.[...]Interesting. A few months ago I wanted to sell ctRegex as the fastest one in a presentation, but in my benchmarks (based on [1]) I found it to be of equal speed or slower than boost::regex (LDC vs Clang). I've got to take a look at your benchmarks, and repeat mine to check again if I didn't mess something up. [1] http://lh3lh3.users.sourceforge.net/reb.shtml
Jul 21 2017
On Friday, 14 July 2017 at 13:29:30 UTC, Joakim wrote:Yes, D's compile-time regex are still the fastest in the world. I've been benching it recently for a marketing-oriented blog post I'm preparing for the official D blog, std.regex beats out the top C and Rust entries from the benchmarks game on linux/x64 with a single core: http://benchmarksgame.alioth.debian.org/u64q/regexredux.html https://github.com/joakim-noah/regex-bench D comes in third on Android/ARM, but not far behind, suggesting it would still be third on that list if run with a bunch of other languages on mobile. Dmitry thinks it might be alignment issues, the bane of cross-platform, high-performance code on ARM, as he hasn't optimized his regex code for ARM.Do you plan to implement a version for the fastest benchmark "n-body" (http://benchmarksgame.alioth.debian.org/u64q/nbody.html) as well? Adding D to the performance comparison of https://github.com/derekmolloy/exploringBB/tree/master/chp05/performance (companion code to the book "Exploring BeagleBone - Tools and Techniques For Building With Embedded Linux") could be good promotion in the embedded domain (where performance, Linux compatibility and code maintainability matters).
Sep 02 2017
On Saturday, 2 September 2017 at 14:49:30 UTC, thinwybk wrote:On Friday, 14 July 2017 at 13:29:30 UTC, Joakim wrote:No, the goal is to demonstrate the nice, super-speedy regex engine in the D standard library by using that same benchmark that Dmitry exhibited years ago, to show D still does really well at regex. It's not to try and compete across all those benchmarks, which D used to dominate at one time. I did wonder how D does on that n-body benchmark now, so I built VPS. Here's the source link for each benchmark, the compiler version, and the command I used to build it: C++: http://benchmarksgame.alioth.debian.org/u64q/program.php?test=nbody&lang=gpp&id=8 clang/llvm 4.0.1 clang -O3 -std=c++11 nbody.cpp -lm -onbody-cpp D: https://bitbucket.org/qznc/d-shootout/raw/898f7f3b3c5d55680229113e973ef95ece6f711a/progs/nbody/nbody.d ldc 1.4 beta1, llvm 4.0.1 ldc2 -O3 nbody.d The D version averages 2.5 seconds, the C++ version 6 seconds, which means D would likely still be at the top of that n-body ranking today.Yes, D's compile-time regex are still the fastest in the world. I've been benching it recently for a marketing-oriented blog post I'm preparing for the official D blog, std.regex beats out the top C and Rust entries from the benchmarks game on linux/x64 with a single core: http://benchmarksgame.alioth.debian.org/u64q/regexredux.html https://github.com/joakim-noah/regex-bench D comes in third on Android/ARM, but not far behind, suggesting it would still be third on that list if run with a bunch of other languages on mobile. Dmitry thinks it might be alignment issues, the bane of cross-platform, high-performance code on ARM, as he hasn't optimized his regex code for ARM.Do you plan to implement a version for the fastest benchmark "n-body" (http://benchmarksgame.alioth.debian.org/u64q/nbody.html) as well?Adding D to the performance comparison of https://github.com/derekmolloy/exploringBB/tree/master/chp05/performance (companion code to the book "Exploring BeagleBone - Tools and Techniques For Building With Embedded Linux") could be good promotion in the embedded domain (where performance, Linux compatibility and code maintainability matters).Hmm, I have not used an ARM board in years, my Pandaboard is in storage far away. By including Android/ARM in the regex blog post, hopefully some people will realize D is a good option there.
Sep 02 2017
On Saturday, 2 September 2017 at 15:41:54 UTC, Joakim wrote:On Saturday, 2 September 2017 at 14:49:30 UTC, thinwybk wrote:Sorry, I assumed the D version worked fine and didn't bother to check the output, turns out it needs two foreach loops changed in advance(dt). Specifically, "Body i" should be changed to "ref Body i" in both foreach statements, so the data is actually updated. ;) After that change, the C++ version wins by a little, 6 seconds vs. 6.5 seconds for the D translation. I see that the C++ version directly invokes SIMD intrinsics, so perhaps that's to be expected.On Friday, 14 July 2017 at 13:29:30 UTC, Joakim wrote:No, the goal is to demonstrate the nice, super-speedy regex engine in the D standard library by using that same benchmark that Dmitry exhibited years ago, to show D still does really well at regex. It's not to try and compete across all those benchmarks, which D used to dominate at one time. I did wonder how D does on that n-body benchmark now, so I linux/x64 VPS. Here's the source link for each benchmark, the compiler version, and the command I used to build it: C++: http://benchmarksgame.alioth.debian.org/u64q/program.php?test=nbody&lang=gpp&id=8 clang/llvm 4.0.1 clang -O3 -std=c++11 nbody.cpp -lm -onbody-cpp D: https://bitbucket.org/qznc/d-shootout/raw/898f7f3b3c5d55680229113e973ef95ece6f711a/progs/nbody/nbody.d ldc 1.4 beta1, llvm 4.0.1 ldc2 -O3 nbody.d The D version averages 2.5 seconds, the C++ version 6 seconds, which means D would likely still be at the top of that n-body ranking today.Yes, D's compile-time regex are still the fastest in the world. I've been benching it recently for a marketing-oriented blog post I'm preparing for the official D blog, std.regex beats out the top C and Rust entries from the benchmarks game on linux/x64 with a single core: http://benchmarksgame.alioth.debian.org/u64q/regexredux.html https://github.com/joakim-noah/regex-bench D comes in third on Android/ARM, but not far behind, suggesting it would still be third on that list if run with a bunch of other languages on mobile. Dmitry thinks it might be alignment issues, the bane of cross-platform, high-performance code on ARM, as he hasn't optimized his regex code for ARM.Do you plan to implement a version for the fastest benchmark "n-body" (http://benchmarksgame.alioth.debian.org/u64q/nbody.html) as well?
Sep 02 2017
On Saturday, 2 September 2017 at 17:00:46 UTC, Joakim wrote:Sorry, I assumed the D version worked fine and didn't bother to check the output, turns out it needs two foreach loops changed in advance(dt). Specifically, "Body i" should be changed to "ref Body i" in both foreach statements, so the data is actually updated. ;) After that change, the C++ version wins by a little, 6 seconds vs. 6.5 seconds for the D translation. I see that the C++ version directly invokes SIMD intrinsics, so perhaps that's to be expected.W.r.t. to the impact of the languages on code base maintainability, etc. I would consider D the better choice either way :) (However the domain you are acting in is guiding a decision for or against a programming language to a great extend: available frameworks, development tools, etc.)
Sep 03 2017
On Saturday, 2 September 2017 at 17:00:46 UTC, Joakim wrote:On Saturday, 2 September 2017 at 15:41:54 UTC, Joakim wrote:What needs to be adjusted for optimization? If you let me know it I adjust it here https://github.com/fkromer/exploringBB/blob/nbody/chp05/performance/nbody.d and/or https://github.com/fkromer/exploringBB/blob/nbody/chp 5/performance/build and/or https://github.com/fkromer/exploringBB/blob/nbody/chp05/performance/run#L25D: https://bitbucket.org/qznc/d-shootout/raw/898f7f3b3c5d55680229113e973ef95ece6f711a/progs/nbody/nbody.d ldc 1.4 beta1, llvm 4.0.1 ldc2 -O3 nbody.d The D version averages 2.5 seconds, the C++ version 6 seconds, which means D would likely still be at the top of that n-body ranking today.Sorry, I assumed the D version worked fine and didn't bother to check the output, turns out it needs two foreach loops changed in advance(dt). Specifically, "Body i" should be changed to "ref Body i" in both foreach statements, so the data is actually updated. ;) After that change, the C++ version wins by a little, 6 seconds vs. 6.5 seconds for the D translation. I see that the C++ version directly invokes SIMD intrinsics, so perhaps that's to be expected.
Sep 03 2017
On Sunday, 3 September 2017 at 17:56:26 UTC, thinwybk wrote:On Saturday, 2 September 2017 at 17:00:46 UTC, Joakim wrote:It's not optimization, right now it's subtly incorrect, because a struct passed into a foreach loop is copied. Add a "ref" to "Body i" when initializing each foreach loop in advance() to remedy that, so that it produces the same output as the C++ version for the same input.On Saturday, 2 September 2017 at 15:41:54 UTC, Joakim wrote:What needs to be adjusted for optimization? If you let me know it I adjust it here https://github.com/fkromer/exploringBB/blob/nbody/chp05/performance/nbody.d and/or https://github.com/fkromer/exploringBB/blob/nbody/chp 5/performance/build and/or https://github.com/fkromer/exploringBB/blob/nbody/chp05/performance/run#L25D: https://bitbucket.org/qznc/d-shootout/raw/898f7f3b3c5d55680229113e973ef95ece6f711a/progs/nbody/nbody.d ldc 1.4 beta1, llvm 4.0.1 ldc2 -O3 nbody.d The D version averages 2.5 seconds, the C++ version 6 seconds, which means D would likely still be at the top of that n-body ranking today.Sorry, I assumed the D version worked fine and didn't bother to check the output, turns out it needs two foreach loops changed in advance(dt). Specifically, "Body i" should be changed to "ref Body i" in both foreach statements, so the data is actually updated. ;) After that change, the C++ version wins by a little, 6 seconds vs. 6.5 seconds for the D translation. I see that the C++ version directly invokes SIMD intrinsics, so perhaps that's to be expected.
Sep 03 2017
On Friday, 14 July 2017 at 09:02:58 UTC, Stefan Koch wrote:On Friday, 14 July 2017 at 08:57:17 UTC, Wulfklaue wrote:There's Red: http://red-lang.org (to my understanding, you can execute arbitrary Red (*) code in macro context; which is basically CTFE+macros). (*) Right now it accepts Rebol code because of implementation limitations; the spec says Red code though and the developers says this is planned.https://blog.sourced.tech/post/language_migrations/ A recent article where github programming languages popularity and migration got analysed was very interesting but it showed one noticeable thing: [...]The beauty of D lies in it's holistic approach. The one unique feature to point out would be CTFE which is not to be found in other compiled langauges. constexpr does not even come close since it cannot return literals :0
Jul 14 2017
On Friday, 14 July 2017 at 09:02:58 UTC, Stefan Koch wrote:The beauty of D lies in it's holistic approach. The one unique feature to point out would be CTFE which is not to be found in other compiled langauges.CTFE is found in Nim, as well as inline assembler. Relatively easy to use AST macros are also found in Nim. I don't know another language with full D-like scope guards. I agree that it's the combination of features that make D appealing. I generally think of D as "C++ done righter" and don't think about specific unique features.
Jul 14 2017
On Friday, 14 July 2017 at 08:57:17 UTC, Wulfklaue wrote:https://blog.sourced.tech/post/language_migrations/ A recent article where github programming languages popularity and migration got analysed was very interesting but it showed one noticeable thing: A total lack of D even mentioned!!! [...]Small initial community + no one paying for viral marketing will do that.I know people will jump onboard and start yelling how D has very unique features but [...]Au contraire (in my case)! I don't need unique features. What I need is a language that allows me to express abstractions/algorithms in a readable, concise manner with the absolute minimum of fuss/time possible. There's no such language (yet), of course, but D has been the closest contender for a long time with Scala coming second (but dropping out as it's not native).
Jul 14 2017
On Friday, 14 July 2017 at 09:27:19 UTC, Moritz Maxeiner wrote:There's no such language (yet), of course, but D has been the closest contender for a long time with Scala coming second (but dropping out as it's not native).Heuuu? Scala Native: https://github.com/scala-native/scala-native Kotlin Native: https://github.com/JetBrains/kotlin-native https://github.com/dotnet/corert ... very few language that are not going native these days. Especially with LLVM.
Jul 14 2017
On Friday, 14 July 2017 at 09:32:15 UTC, Wulfklaue wrote:On Friday, 14 July 2017 at 09:27:19 UTC, Moritz Maxeiner wrote:I think he meant System (!= Native). E.g. none of the languages listed above have inline assembly, which is crucial if e.g. your doing kernel level programming or low-level optimizations. Also, (AFAIK) none of these language allow you to easily create threads outside of their language runtime, which is critical for e.g. writing real-time audio DAW plugins (see https://www.auburnsounds.com/blog/index.html). Also unlike D, the GCs of each respective language is implemented in a different language (C++, IIRC).There's no such language (yet), of course, but D has been the closest contender for a long time with Scala coming second (but dropping out as it's not native).Heuuu? Scala Native: https://github.com/scala-native/scala-native Kotlin Native: https://github.com/JetBrains/kotlin-native https://github.com/dotnet/corert ... very few language that are not going native these days. Especially with LLVM.
Jul 14 2017
On Friday, 14 July 2017 at 09:32:15 UTC, Wulfklaue wrote:On Friday, 14 July 2017 at 09:27:19 UTC, Moritz Maxeiner wrote:Third party project that supports only a subset (albeit a large one) and effectively requires writing certain code differently (-> scala.scalanative.native).There's no such language (yet), of course, but D has been the closest contender for a long time with Scala coming second (but dropping out as it's not native).Heuuu? Scala Native: https://github.com/scala-native/scala-nativeKotlin Native: https://github.com/JetBrains/kotlin-nativeIrrelevant, I wasn't talking about Kotlin.https://github.com/dotnet/corertSame here.
Jul 14 2017
On Friday, 14 July 2017 at 08:57:17 UTC, Wulfklaue wrote:https://blog.sourced.tech/post/language_migrations/ A recent article where github programming languages popularity and migration got analysed was very interesting but it showed one noticeable thing: A total lack of D even mentioned!!! When looking at other language ranking sites, D always scores better then Rust. Yet, Rust gets included in the ranking but D is ... nowhere to be seen. It gets even a bit annoying when its always Rust, Rust, Rust ... that keeps popping up. Seen it more and more how Rust is simply trampling over any D messaging. D... It really has no very unique feature that makes it noticeable. * no GC language that people can push until people there ears bleed ( Rust) * no really unique features that people care about to set it aside from C/C++, ... * It has the kitchen and sink but nobody talk about the kitchen and sink. I know people will jump onboard and start yelling how D has very unique features but from the "outside world" its always the same response. While more people are downloading D and trying it out, i barely see any independent D language blogs. Not to be a downer but D really in my eyes is missing that "unique" feature that people care about, that allows people to blog about the language...I agree with the others that having no major company behind DLang is not helping from a money/resource/exposure point of view. That said, there must be things we can do as a community to help improve the situation. I can imagine for example that the community could focus on particular sectors where D excels, and create as much quality content as possible about how to use D to solve problems in those areas. Moreover having a push to get articles into the blogosphere and social media would do wonders. Coming from a web development background (PHP), I think D is a wonderful language. It's expressive, elegant, performant and fun. Based on my experience, I think web development is one of those sectors where D could become more popular. Expanding on web development using D, I must say that Vibe.d is a pleasure to work with and once the new release of Vibe.d is fully optimised, it should stack up favourably over using a PHP framework in terms of performance, memory consumption and scalability. However if you're not a D programmer and you're looking at the vibe.d website for the first time, you'd probably leave for a few reasons without trying it. To address that I would recommend the following: - Vibe.d has built in Redis and Mongo drivers which is excellent, but it may not be immediately obvious that you can in-fact work with MySQL and Postgres easily. This is very important to many developers, and hence having a clear nav/menu item that links to a tutorial or two on the vibe.d website about integrating with those databases would be very useful to put that objection to bed. - Once it's appropriate, do some benchmarks that compares D to PHP frameworks such as Slim, Silex, Lumen for common functionality such as CRUD operations with sessions, JSON serialisation etc, linking to the D code for reference. Assuming D is easily the winner, really highlight the results. Ultimately handling more requests on a single machine means money saved once web apps start scaling. - Have some tutorials about using JS frameworks such as React/Angular/Vue.js and CSS frameworks such as Bootstrap and Foundation with Vibe.d. Obviously these really aren't directly related to D or Vibe.d, it helps to show that D can be used easily for solutions using those technologies. - Improving the vibe.d website look and feel, and having some clear and bold messaging on the home page about why you should use it. Cheers.
Jul 14 2017
On Friday, 14 July 2017 at 15:13:23 UTC, Andrew Chapman wrote:I agree with the others that having no major company behind DLang is not helping from a money/resource/exposure point of view. That said, there must be things we can do as a community to help improve the situation. I can imagine for example that the community could focus on particular sectors where D excels, and [...]The primary issue isn't what *can* be done, but what *is going* to be done: People (including me) can be (reasonably) expected to spend their free time on things that interest them; those don't usually intersect with things that would make D more popular - not to mention that D has still too many internal rough edges for me to think making D significantly more popular at this point in time is going to help us in the long run. I personally much prefer a slow, steady growth until the internals ( nogc, shared, etc.) have been sorted out.
Jul 14 2017
I agree with the others that having no major company behind DLang is not helping from a money/resource/exposure point of view. That said, there must be things we can do as a community to help improve the situation. I can imagine for example that the community could focus on particular sectors where D excels, and create as much quality content as possible about how to use D to solve problems in those areas. Moreover having a push to get articles into the blogosphere and social media would do wonders. Coming from a web development background (PHP), I think D is a wonderful language. It's expressive, elegant, performant and fun. Based on my experience, I think web development is one of those sectors where D could become more popular.+1 Sorry to repeat myself, but D's built-in concurrency (fibers) makes it a better alternative to Go for web development. More over, as it generate fast executable at lightspeed, it can be a very good alternative to Dart for cross mobile development. What is lacking is just immediate usability through simple, easy to use libraries, automatically installed along with the compiler. My advice is to stop focusing on making D a "better language", because it's already very usable at the moment in its current state. I'm even afraid of some D3 proposals which could injure more than heal in this regard. Instead, try to make it a "better tool" for CROSS-PLATFORM mobile and web development. That's where the need is, that's where the hype will be. Don't be blind, look at what Dart, Kotlin, etc offer to those who need to implement web/mobile applications. D can do better than them in these areas with the right mix of official libraries and auto-promotion. Right now I'm using Dart for Android/iOS development, and Go for web development, despite these language s*ck compared to D. Because they are VERY CONVENIENT and USABLE for that. D has better language features, but what makes a language stand above its competition are its official libraries. Those of Go and Dart are obviously not perfect, as everybody has different needs and ways of thinking, but many people should agree that they are well designed in order get the job done quickly. So again, stop making D a better development language, make it a better development TOOL.
Jul 16 2017
On Friday, 14 July 2017 at 08:57:17 UTC, Wulfklaue wrote:https://blog.sourced.tech/post/language_migrations/ A recent article where github programming languages popularityAre you aware this is a github infomercial ? That is how gamification works: make you compete over who has the most github repos or more migration or whatevers, but the important part is making github keep the score :) This is not about language popularity but about language popularity on github. Moreover while charts are nice we don't have a "other" category so we don't really see if the languages listed cover 90% of github repos or 50% of github repos. Even more, if you used github you know the language the project gets listed under by default is rather random: if you have js files it might get listed under js, if you have C files it might get listed under C: for example the rather large migration of Perl programmers to C is very probably just Perl modules adding XS components. So don't stress and keep using D ;)
Jul 14 2017
On Friday, 14 July 2017 at 08:57:17 UTC, Wulfklaue wrote:https://blog.sourced.tech/post/language_migrations/I know people will jump onboard and start yelling how D has very unique features but from the "outside world" its always the same response. While more people are downloading D and trying it out, i barely see any independent D language blogs.Maybe you havent't looked enough. I blog about D (basic stuff) at http://aberba.com/#blog. I wrote one for Opensource.com at https://opensource.com/article/17/5/d-open-source-software-development which received some positive feedback. There are other blog posts about D too.Not to be a downer but D really in my eyes is missing that "unique" feature that people care about, that allows people to blog about the language...We care about the existing features done right that D has. In my experience, people like D (syntax, features, CTFE, UFCS, modules, etc.)... the only thing missing is that "we have more language than [real world usage]" coined from what Andre said at DConf. D is way better and addictive than how I found it in 2014. The language and ecosystem keeps getting richer. I can't enjoy coding in any other language than I do in D.
Jul 14 2017
the only thing missing is that "we have more language than [real world usage]" coined from what Andre said at DConf.I couldn't say it better... D is a better language, but advertising it for that is not what will make it popular. People have DEVELOPMENT needs, before LANGUAGE needs. In its current state, D is already perfect for some developments (high-performance computing and file processing, etc), but for many COMMON "real world usages", IMHO it's still lagging WAY behind many "inferior" languages in terms of easy of use, and thus immediate usability... Everything can be done in D with the right amount of effort, but the more effort required, the more clever you need to pickup this language. And the less people you will convince to use it. Sorry, but for many less-skilled programmers like me, that's how things work. So just show a few stupid-simple 20-liners "hello world"-like examples ALSO for web and mobile development, and you will immediately see much more interest in this language from base-level people like me.
Jul 16 2017
On Sunday, 16 July 2017 at 07:25:45 UTC, Ecstatic Coder wrote:People have DEVELOPMENT needs, before LANGUAGE needs. In its current state, D is already perfect for some developments (high-performance computing and file processing, etc), but for many COMMON "real world usages", IMHO it's still lagging WAY behind many "inferior" languages in terms of easy of use, and thus immediate usability... Everything can be done in D with the right amount of effort, but the more effort required, the more clever you need to pickup this language. And the less people you will convince to use it. Sorry, but for many less-skilled programmers like me, that's how things work.Then maybe D is not the right language for you, at least not yet. Any tech goes through several well-defined stages, as I've talked about before and you can read about online: http://forum.dlang.org/post/utmwiveailhkouaeyisf forum.dlang.org https://en.wikipedia.org/wiki/Technology_adoption_life_cycle There are two aspects to any tech, the fundamental design and how it integrates with the rest of the world, ie the libraries and ease of use that you miss. A couple of really smart people can work on the fundamental design, but it takes a lot of people working over years to add libraries and polish to a programming language. That's why D is only geared towards those niches you list and a few others right now: it needs to prove itself there before people will invest a bunch of time and money into making it work for the rest of the "COMMON real word usages" you miss. It took millions of dollars and years for Java or .Net to build up the massive libraries and JIT/GC improvements that made them easier for you to use now. D is not at that stage for many uses yet, certainly not for mobile, which I've been working on for years. D needs to prove itself with startups like Weka and OSS projects like Tilix and slowly get polished and many more libraries added. It is happening, there's a lot of stuff on dub these days: http://code.dlang.org But if you can't wait till that's all done, you can either chip in with writing libraries or polishing up the ease of use, or go use something else till D's ready for you.
Jul 16 2017
I'm already following both of your advices. But D doesn't have to prove anything to become more popular. It just needs to have a better competitive advantage. And it almost has it. You know that all the bits of technology are already there, spread in independant files from various github accounts. What is lacking is essentially market-aware packaging and promotion. For instance, add a Nuklear UI binding with touch events, and a small existing Http library, and you will have a Dart/Haxe competitor. What D needs right now is commercial leadership, to compensate for the lack of manpower... There is no other choice, if you don't want D to be "buried" by Go, Dart, Rust, Kotlin, and all the other new emergent "pragmatic" languages, which instead target the typical development needs of the base developer.
Jul 16 2017
On Friday, 14 July 2017 at 08:57:17 UTC, Wulfklaue wrote:https://blog.sourced.tech/post/language_migrations/ A recent article where github programming languages popularity and migration got analysed was very interesting but it showed one noticeable thing: A total lack of D even mentioned!!! When looking at other language ranking sites, D always scores better then Rust. Yet, Rust gets included in the ranking but D is ... nowhere to be seen. It gets even a bit annoying when its always Rust, Rust, Rust ... that keeps popping up. Seen it more and more how Rust is simply trampling over any D messaging. D... It really has no very unique feature that makes it noticeable. * no GC language that people can push until people there ears bleed ( Rust) * no really unique features that people care about to set it aside from C/C++, ... * It has the kitchen and sink but nobody talk about the kitchen and sink. I know people will jump onboard and start yelling how D has very unique features but from the "outside world" its always the same response. While more people are downloading D and trying it out, i barely see any independent D language blogs. Not to be a downer but D really in my eyes is missing that "unique" feature that people care about, that allows people to blog about the language...Well, at one point Andrei said that what is missing to make D's growth explosive is a strong corporate sponser [1]. This seemed sensible to me at the time and still seems sensible today. But I don't know what (if anything) can be done to increase the corporate community's interest in D. [1] CPPcast, Oct. 27, 2015: http://cppcast.com/2015/10/andrei-alexandrescu/ (at 25:30)
Jul 15 2017
On Sat, 2017-07-15 at 11:22 +0000, Mark via Digitalmars-d wrote: [=E2=80=A6]=20 Well, at one point Andrei said that what is missing to make D's=20 growth explosive is a strong corporate sponser [1]. This seemed=20 sensible to me at the time and still seems sensible today. But I=20 don't know what (if anything) can be done to increase the=20 corporate community's interest in D.Java has IBM, Oracle, Red Hat, many companies, and the JCP C++ has Microsoft, Intel, many companies, and ISO/IEC JTC1/SC22/WG21 Rust has Mozilla, and lots of companies thinking it beats C++. Go has Google, Cloudflare, and many companies, mostly Web focussed. Swift has Apple, and the entire iOS community. D has ??? --=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=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 voip:sip: russel.winder ekiga.net 41 Buckmaster Road m:+44 7770 465 077 xmpp:russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype:russel_winder
Jul 15 2017
On Saturday, 15 July 2017 at 16:52:51 UTC, Russel Winder wrote:On Sat, 2017-07-15 at 11:22 +0000, Mark via Digitalmars-d wrote: […]Sociomantic, Weka, EMSI, and a handful of others. None is as humongous as google or Apple, but then it's not like those companies write everything in Go and Swift. Those languages are small parts of those giant corporations. To answer Mark's original question, the corporates get interested when there are competitors eating their lunch with new tech. They don't actively scout out all the new tech, they're far too lazy for that. But when Sociomantic or Weka or some new company _you_ build with D starts putting them out of business, their ears perk up. ;) The no. 1 thing that will help D is people writing great software with it and showing how wonderful D is. More than docs, fixing bugs, marketing, anything. It doesn't matter if the language still has flaws, the influx of use, attention, and money after that will help patch those holes up, look at Rails. You don't have to have a huge budget to write that D software, the guy who wrote Tilix did it in his spare time and it's the top-starred D project on github after dmd: https://github.com/search?l=D&q=stars%3A>1&s=stars&type=RepositoriesWell, at one point Andrei said that what is missing to make D's growth explosive is a strong corporate sponser [1]. This seemed sensible to me at the time and still seems sensible today. But I don't know what (if anything) can be done to increase the corporate community's interest in D.Java has IBM, Oracle, Red Hat, many companies, and the JCP C++ has Microsoft, Intel, many companies, and ISO/IEC JTC1/SC22/WG21 Rust has Mozilla, and lots of companies thinking it beats C++. Go has Google, Cloudflare, and many companies, mostly Web focussed. Swift has Apple, and the entire iOS community. D has ???
Jul 15 2017
On Saturday, 15 July 2017 at 17:10:56 UTC, Joakim wrote:On Saturday, 15 July 2017 at 16:52:51 UTC, Russel Winder wrote:...[...]Sociomantic, Weka, EMSI, and a handful of others. None is as humongous as google or Apple, but then it's not like those companies write everything in Go and Swift. Those languages are small parts of those giant corporations. To answer Mark's original question, the corporates get interested when there are competitors eating their lunch with new tech. They don't actively scout out all the new tech, they're far too lazy for that. But when Sociomantic or Weka or some new companyThe no. 1 thing that will help D is people writing great software with it and showing how wonderful D is.Who is building the killer app?
Jul 15 2017
On Saturday, 15 July 2017 at 17:36:50 UTC, aberba wrote:On Saturday, 15 July 2017 at 17:10:56 UTC, Joakim wrote:Maybe it's Weka? http://forum.dlang.org/thread/pjogugkxvvntleoqclef forum.dlang.org Maybe it's Adam. :) You never know where it will come from. Nobody knew who the VisiCalc guys were and they made the Apple II: https://en.wikipedia.org/wiki/VisiCalc The important part is that we need many people to try building great stuff with D, and out of some combination of good application design, users who really want that ability, and luck, something will rise up.On Saturday, 15 July 2017 at 16:52:51 UTC, Russel Winder wrote:...[...]Sociomantic, Weka, EMSI, and a handful of others. None is as humongous as google or Apple, but then it's not like those companies write everything in Go and Swift. Those languages are small parts of those giant corporations. To answer Mark's original question, the corporates get interested when there are competitors eating their lunch with new tech. They don't actively scout out all the new tech, they're far too lazy for that. But when Sociomantic or Weka or some new companyThe no. 1 thing that will help D is people writing great software with it and showing how wonderful D is.Who is building the killer app?
Jul 15 2017
Who is building the killer app?Why do you need a killer app ? Here is how Google "sells" Go on golang.org : "Go is an open source programming language that makes it easy to build simple, reliable, and efficient software." And here is how Google "sells" Dart dartlang.org : "Dart is an application programming language that’s easy to learn, easy to scale, and deployable everywhere. Google depends on Dart to make very large apps." In two words : "EASY TO". Have you seen Dart's core GOALS ? "1. Provide a solid foundation of libraries and tools A programming language is nothing without its core libraries and tools. Dart’s have been powering very large apps for years now. 2. Make common programming tasks easy Application programming comes with a set of common problems and common errors. Dart is designed to make those problems easier to tackle, and errors easier to catch. This is why we have async/await, generators, string interpolation, earlier error detection and much more. 3. Don’t surprise the programmer There should be a direct correspondence between what you type and what’s going to happen. Magic (automatic type coercion, hoisting, “helper” globals, …) doesn’t mix well with large apps. 4. Be the stable, pragmatic solution for real apps Dart might seem boring to some. We prefer the terms productive and stable. We work closely with our core customers—the developers who build large applications with Dart—to make sure we’re here for the long run." Let's look how D is "sold" on dlang.org : "D is a general-purpose programming language with static typing, systems-level access, and C-like syntax. It combines efficiency, control and modeling power with safety and programmer productivity." And then : "Why D ? 1. Convenience (type inference, GC, arrays, slices, ranges, etc) 2. Power (classic polymorphism, value semantics, functional style, generics, generative programming, contract programming, concurrency, etc) 3. Efficiency (native code, fast and safe, native pointers, etc)." Do you see the difference between those website ? Language features versus real-world usage, again !!! The only "major" changes to dlang.org that I've seen appearing recently : 1. "general-purpose" is more open and welcoming that "systems". 2. there is a 10-liners we b-server "hello world" example which sometimes (randomly) appears in the code roulette. I sincerely appreciate the effort, really, but admit that there is still a HUGE difference between how D and more popular languages like Python, Go, etc are advertised. I'm still not convinced that D's way is the best in order to significantly improve its popularity among developers...
Jul 16 2017
On Sunday, 16 July 2017 at 08:37:53 UTC, Ecstatic Coder wrote:Let's look how D is "sold" on dlang.org : "D is a general-purpose programming language with static typing, systems-level access, and C-like syntax. It combines efficiency, control and modeling power with safety and programmer productivity." And then : "Why D ? 1. Convenience (type inference, GC, arrays, slices, ranges, etc) 2. Power (classic polymorphism, value semantics, functional style, generics, generative programming, contract programming, concurrency, etc) 3. Efficiency (native code, fast and safe, native pointers, etc)." Do you see the difference between those website ? Language features versus real-world usage, again !!!So this is what Andrei meant when he once mentioned D's historical lack of vision.
Jul 19 2017
On Sunday, 16 July 2017 at 08:37:53 UTC, Ecstatic Coder wrote:I sincerely appreciate the effort, really, but admit that there is still a HUGE difference between how D and more popular languages like Python, Go, etc are advertised. I'm still not convinced that D's way is the best in order to significantly improve its popularity among developers...After going back recently to good old Pascal. More specific the freepascal compiler combined with Visual Studio Code + Omnipascal, ... it felt just more easy. In a few days time after reading up all the details, i got myself a nice multithreaded http server build without using any standardized framework. Sure it is missing a lot of functionality but i felt more proud writing it in Pascal, then i did writing the same in D The easy to write cross platform Dlls. The more clean design to use those DLL loading without relying on dlsym all the time. The time wasted trying to figure that out in D to get it working correctly. *uch* ... While the language is indeed more "verbose" ( not that much ), the compiler does less checking, it just is more "fun". D feels more like work. Now it also helps that there is massive amount of more documentation for pascal out there, even if its old. My system needs a dozen core design implementations. Finding the base code for half, in Pascal took me a day. In D it took weeks of searching and trying to understand ( and a lot i do not have ) and i still have less code examples then pascal. At the same Pascal compiles in 0.1 second, give me the speed similar(actually faster) than D, cross platform support, no need to mess with different compiler ( dmd for compile, ldc for speed ). Its even more TTD then D :) Windows: Download, install, runs. It integrates perfectly with the Visual Studio Code plugin. Linux a simple apt-get command. No need to download a deb or run a shell script. It just more user friendly in a strange way. I feel like i can talk hours about Pascal but D feels so C++ like. Maybe that is why its hard to accept. The point that Ecstatic Coder has been trying to make for a long time. D for all its merits feels at times ... do not know how to express.
Jul 20 2017
On Thursday, 20 July 2017 at 15:40:04 UTC, Wulfklaue wrote:After going back recently to good old Pascal. More specific the freepascal compiler combined with Visual Studio Code + Omnipascal, ... it felt just more easy. In a few days time after reading up all the details, i got myself a nice multithreaded http server build without using any standardized framework. Sure it is missing a lot of functionality but i felt more proud writing it in Pascal, then i did writing the same in D The easy to write cross platform Dlls. The more clean design to use those DLL loading without relying on dlsym all the time. The time wasted trying to figure that out in D to get it working correctly. *uch* ... While the language is indeed more "verbose" ( not that much ), the compiler does less checking, it just is more "fun". D feels more like work. Now it also helps that there is massive amount of more documentation for pascal out there, even if its old.At the same Pascal compiles in 0.1 second, give me the speed similar(actually faster) than D, cross platform support, no need to mess with different compiler ( dmd for compile, ldc for speed ). Its even more TTD then D :) Windows: Download, install, runs. It integrates perfectly with the Visual Studio Code plugin. Linux a simple apt-get command. No need to download a deb or run a shell script.i did the same, but use for windows programs AWD Modula. its free, compiles fast and is used commercially. i QUIT on D, since you can't install and use, for all the reasons you describe. a consequence for me was to warn people at work to use it.
Jul 20 2017
On Thursday, 20 July 2017 at 15:40:04 UTC, Wulfklaue wrote:Windows: Download, install, runs. It integrates perfectly with the Visual Studio Code plugin. Linux a simple apt-get command. No need to download a deb or run a shell script.i did the same, but use for windows programs AWD Modula. its free, compiles fast and is used commercially. i QUIT on D, since you can't install and use, for all the reasons you describe. a consequence for me was to warn people at work to use it.
Jul 20 2017
On Thursday, 20 July 2017 at 16:15:43 UTC, porter wrote:i did the same, but use for windows programs AWD Modula. its free, compiles fast and is used commercially.AWD Modula? You mean Modula 2?
Jul 20 2017
On Thursday, 20 July 2017 at 17:04:14 UTC, Wulfklaue wrote:On Thursday, 20 July 2017 at 16:15:43 UTC, porter wrote:yes https://www.modula2.org/adwm2/i did the same, but use for windows programs AWD Modula. its free, compiles fast and is used commercially.AWD Modula? You mean Modula 2?
Jul 20 2017
On Thursday, 20 July 2017 at 16:15:43 UTC, porter wrote:On Thursday, 20 July 2017 at 15:40:04 UTC, Wulfklaue wrote:the problems are greater than thought http://forum.dlang.org/thread/bqlfknpsdetzoxuxrtte forum.dlang.org
Jul 22 2017
On Saturday, 15 July 2017 at 17:36:50 UTC, aberba wrote:Who is building the killer app?The problem with a killer app is that it needs multiple teams to build it, not a single person, and many open-source projects go on their own ways instead of contributing to a single goal, see the many distros of Linux for an example. You know my engine called PixelPerfectEngine, that project started in 2014, and it's still in alpha due to its massive lack of features compared to some of its competitors also doing 2D graphics in a similar way. One even has mode7-like capabilities and road generation, although mine will have an editor and a sound engine capable of playing back multi-channel music, instead of concentrating solely on graphics, not to mention the possibility of hardware acceleration via DCompute and VideoCore4 assembly (I'll write that few blitter and alpha-blending stuff in assembly, I already had to write them in x86 assembly due to the lack of proper SIMD with any of the compilers). Granted, I had college, work, family and personal issues due to long periods of unemployment, and in the beginning my skills seriously lacked, but with a team the engine would already have been finished. But even first, the language and the compilers still have their own problems. DLL support is buggy, SIMD is partial and x86-64 exclusive, the GC is not perfect, many parts of the standard library is obsolete, like the XML parser.
Jul 19 2017
On Saturday, 15 July 2017 at 17:10:56 UTC, Joakim wrote:To answer Mark's original question, the corporates get interested when there are competitors eating their lunch with new tech. They don't actively scout out all the new tech, they're far too lazy for that. But when Sociomantic or Weka or some new company _you_ build with D starts putting them out of business, their ears perk up. ;)Point taken. :)
Jul 15 2017
On Saturday, 15 July 2017 at 16:52:51 UTC, Russel Winder wrote:D has ???D has me. Do not be too proud of the corporate terror the others have constructed. The power to wave around a million dollars is insignificant next to the power of the Nerdiness.
Jul 15 2017
On Friday, 14 July 2017 at 08:57:17 UTC, Wulfklaue wrote:https://blog.sourced.tech/post/language_migrations/ A recent article where github programming languages popularity and migration got analysed was very interesting but it showed one noticeable thing: [...]Unless some miracle happens and makes the GC better by preventing stop-the-world, or gets rid of the GC, D will not get any more attention.
Jul 22 2017
On Sat, 2017-07-22 at 13:27 +0000, aedt via Digitalmars-d wrote:=20[=E2=80=A6]Unless some miracle happens and makes the GC better by preventing=20 stop-the-world, or gets rid of the GC, D will not get any more=20 attention.D without the GC isn't at all interesting, might as well use Go in that case. So D only gets traction if it keeps a GC. Except for the "actually on the metal" people who can prove they cannot survive if there is a GC, and D does that already =E2=80=93 but without the= standard library. --=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=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 voip:sip: russel.winder ekiga.net 41 Buckmaster Road m:+44 7770 465 077 xmpp:russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype:russel_winder
Jul 22 2017
On 22.07.2017 16:20, Russel Winder via Digitalmars-d wrote:D without the GC isn't at all interesting, might as well use Go in that case.Uh, no.
Jul 22 2017
On Saturday, 22 July 2017 at 14:20:24 UTC, Russel Winder wrote:On Sat, 2017-07-22 at 13:27 +0000, aedt via Digitalmars-d wrote:Go people are also trying to make their GC pretty fast afaik https://news.ycombinator.com/item?id=12821586[…] D without the GC isn't at all interesting, might as well use Go in that case. So D only gets traction if it keeps a GC.
Jul 22 2017
On Sat, 2017-07-22 at 17:06 +0000, aedt via Digitalmars-d wrote:On Saturday, 22 July 2017 at 14:20:24 UTC, Russel Winder wrote:I believe they are their third or fourth already. Java and Go development teams put a significant amount of effort into GC. --=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=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 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winderOn Sat, 2017-07-22 at 13:27 +0000, aedt via Digitalmars-d wrote:=20 Go people are also trying to make their GC pretty fast afaik https://news.ycombinator.com/item?id=3D12821586=20=20 [=E2=80=A6] D without the GC isn't at all interesting, might as well use Go=20 in that case. So D only gets traction if it keeps a GC.
Jul 23 2017
On Sunday, 23 July 2017 at 08:27:08 UTC, Russel Winder wrote:On Sat, 2017-07-22 at 17:06 +0000, aedt via Digitalmars-d wrote:Those languages were of course designed within the restrictions of a GC to begin with too, but there seems to be a Go 2 language in the works now: https://blog.golang.org/toward-go2?utm_source=golangweekly&utm_medium=emailGo people are also trying to make their GC pretty fast afaik https://news.ycombinator.com/item?id=12821586I believe they are their third or fourth already. Java and Go development teams put a significant amount of effort into GC.
Jul 24 2017
On Mon, 2017-07-24 at 10:07 +0000, Ola Fosheim Gr=C3=B8stad via Digitalmars= - d wrote:[=E2=80=A6] =20 Those languages were of course designed within the restrictions=C2=A0 of a GC to begin with too, but there seems to be a Go 2 language=C2=A0 in the works now:I had assumed D was designed to be a GC language from the outset.https://blog.golang.org/toward- go2?utm_source=3Dgolangweekly&utm_medium=3Demail =20It seems that the Go team are using backward compatibility as a rod for their own backs just as Java/JDK folk did. There is a big difference between taking the community with you, cf. Python 2 =E2=86=92 3 for an anti= - pattern, versus not allowing breaking changes, cf. the mess Java is in. --=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=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 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
Jul 24 2017
On Monday, 24 July 2017 at 11:28:51 UTC, Russel Winder wrote:I had assumed D was designed to be a GC language from the outset.The D memory model is still in flux and always allowed C-like memory management. Whereas both Go and Java sacrificed fast C interfacing from the early days to get proper GC support, so there is a qualitative difference in the assumptions made in the language designs.It seems that the Go team are using backward compatibility as a rod for their own backs just as Java/JDK folk did.Yes, maybe. Although I guess one strategy would be to allow library codebases to move along up until say Go 1.12 and get wide scale feature adoption in Go libraries that are very close to the 2.0 semantics, thus making porting to 2.0 more attractive to library devs. But some platforms, like App Engine is currently stuck at Go 1.6 so not sure how Google as a whole thinks about this. Interestingly Dart is now moving towards static typing, as many of the current user Google users expect Java-like static predictability. So, one thing is what the language designers want, but maybe Google's own usage will take Go in another direction as well.
Jul 24 2017
On Monday, 24 July 2017 at 12:47:43 UTC, Ola Fosheim Grøstad wrote:On Monday, 24 July 2017 at 11:28:51 UTC, Russel Winder wrote:I am obviously not a language design or implementation expert, but what you said, does it mean that D cannot have a fast GC by designI had assumed D was designed to be a GC language from the outset.The D memory model is still in flux and always allowed C-like memory management. Whereas both Go and Java sacrificed fast C interfacing from the early days to get proper GC support, so there is a qualitative difference in the assumptions made in the language designs.
Jul 24 2017
On Monday, 24 July 2017 at 13:34:18 UTC, Ali wrote:On Monday, 24 July 2017 at 12:47:43 UTC, Ola Fosheim Grøstad wrote:http://www.infognition.com/blog/2014/the_real_problem_with_gc_in_d.htmlOn Monday, 24 July 2017 at 11:28:51 UTC, Russel Winder wrote:I am obviously not a language design or implementation expert, but what you said, does it mean that D cannot have a fast GC by designI had assumed D was designed to be a GC language from the outset.The D memory model is still in flux and always allowed C-like memory management. Whereas both Go and Java sacrificed fast C interfacing from the early days to get proper GC support, so there is a qualitative difference in the assumptions made in the language designs.
Jul 24 2017
On Monday, 24 July 2017 at 13:34:18 UTC, Ali wrote:I am obviously not a language design or implementation expert, but what you said, does it mean that D cannot have a fast GC by designMany things are possible if you put enough constraints on the problem and enough advanced features in the tooling. So I think that depends on how you write your programs, the hardware they run on as well as the effort it takes to get the compiler/runtime/tooling there. When people say that a GC is fast they probably mean the performance you get when writing a variety of programs that allocate many objects with no thought given to how it affects memory management performance.
Jul 24 2017
On Mon, 2017-07-24 at 12:47 +0000, Ola Fosheim Gr=C3=B8stad via Digitalmars= - d wrote:=20[=E2=80=A6]Interestingly Dart is now moving towards static typing, as many=C2=A0 of the current user Google users expect Java-like static=C2=A0 predictability. So, one thing is what the language designers=C2=A0 want, but maybe Google's own usage will take Go in another=C2=A0 direction as well.There is little traction in a browser-focused language that doesn't offer a massive USP over JavaScript/ECMAScript =E2=80=93 typing is the only= USP over ES6 that has any chance really. Elm, Kotlin, Ceylon, etc. are already populating the market. I suspect Dart will have little hope for traction now. --=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=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 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
Jul 25 2017
On Tuesday, 25 July 2017 at 10:27:43 UTC, Russel Winder wrote:There is little traction in a browser-focused language that doesn't offer a massive USP over JavaScript/ECMAScript – typing is the only USP over ES6 that has any chance really. Elm, Kotlin, Ceylon, etc. are already populating the market. I suspect Dart will have little hope for traction now.Well, most languages have little hope for traction :-). Traction comes predominantly from specific use cases, so it all depends on whether Google is going to push Dart as a cross platform programming language with flutter.io and how it is used internally at Google. I think they use it for their Google Ads software, so I guess it currently is quite important for them. Anyhow, my point was more that Google's actual usage and needs might affect where Go 2 heads if we judge by Dart has evolved over time. I assume that the initial design of Go and Dart was more based on designe aesthetics, and that actual demand will drive the evolution if they are used extensively internally at Google...
Jul 25 2017
On Tuesday, 25 July 2017 at 10:27:43 UTC, Russel Winder wrote:There is little traction in a browser-focused language that doesn't offer a massive USP over JavaScript/ECMAScript – typing is the only USP over ES6 that has any chance really. Elm, Kotlin, Ceylon, etc. are already populating the market. I suspect Dart will have little hope for traction now.While Elm and Kotlin get a decent amount of press, Dart is scoring well on Github and TIOBE.
Jul 25 2017
On Saturday, 22 July 2017 at 13:27:03 UTC, aedt wrote:Unless some miracle happens and makes the GC better by preventing stop-the-worldI have yet to see a (working, correct) non-STW GC that doesn't make other trade offs not acceptable for D (extra thread(s), memory barriers for all writes, etc.). There's room for improvement of the current GC, but I sincerely doubt we will see one that's not STW.or gets rid of the GCAnd remove one of the primary reasons why one doesn't have to prototype in some script language (e.g. python)? No thanks.
Jul 22 2017
On Saturday, 22 July 2017 at 14:39:17 UTC, Moritz Maxeiner wrote:On Saturday, 22 July 2017 at 13:27:03 UTC, aedt wrote:Ocaml comes to mind, it is being used bu jane street for high frequency trading and they dont complain I think the key point it, is that if stw fast enough, it is good enough for most uses I think a very fast GC should be next on the list for DUnless some miracle happens and makes the GC better by preventing stop-the-worldI have yet to see a (working, correct) non-STW GC that doesn't make other trade offs not acceptable for D (extra thread(s), memory barriers for all writes, etc.). There's room for improvement of the current GC, but I sincerely doubt we will see one that's not STW.or gets rid of the GCAnd remove one of the primary reasons why one doesn't have to prototype in some script language (e.g. python)? No thanks.
Jul 22 2017
On Saturday, 22 July 2017 at 15:13:12 UTC, Ali wrote:On Saturday, 22 July 2017 at 14:39:17 UTC, Moritz Maxeiner wrote:Ocaml's GC is stop-the-world for both its minor and major heap [1], so if someone wants to write another GC implementation for D, that's a good place to draw inspiration from, yes. [1] https://realworldocaml.org/v1/en/html/understanding-the-garbage-collector.htmlOn Saturday, 22 July 2017 at 13:27:03 UTC, aedt wrote:Ocaml comes to mind, it is being used bu jane street for high frequency trading and they dont complain I think the key point it, is that if stw fast enough, it is good enough for most uses I think a very fast GC should be next on the list for DUnless some miracle happens and makes the GC better by preventing stop-the-worldI have yet to see a (working, correct) non-STW GC that doesn't make other trade offs not acceptable for D (extra thread(s), memory barriers for all writes, etc.). There's room for improvement of the current GC, but I sincerely doubt we will see one that's not STW.or gets rid of the GCAnd remove one of the primary reasons why one doesn't have to prototype in some script language (e.g. python)? No thanks.
Jul 22 2017
When looking at other language ranking sites, D always scores better then Rust. Yet, Rust gets included in the ranking but D is ... nowhere to be seen.Well, on the Tiobe index D is currently on place 23 way ahead of Lua, Scala, Rust, Kotlin, Groovy. So there is obviously asomething wrong with the Tiobe index here as all those other languagse are quite a bit in use. Hope this compensates a bit for your pain ;-).Not to be a downer but D really in my eyes is missing that "unique" feature that people care about, that allows people to blog about the language...D is the most feature rich language I know of. Maybe only Scala comes close, but Scala can be at times an unreadable mess as the designers of the language valued mixing functional and OO higher than readability. D, on the contrary, has a very clean design througout. But you are right. D is missing some unique selling point like ease of concurrency using Communicating Sequential Processes in Go or memory safety in Rust without a GC. This is because D does not have a business model, but seems to be seen as a playground for building the greatest language ever. I fear this will not change. Topics of people arguing that D needs a business case pop up regularly here and are every time mostly or also completely ignored. It does not look like this will change, because the main drivers of the language never drop a comment in those discussions.
Jul 25 2017
On Wednesday, 26 July 2017 at 06:40:22 UTC, Bienlein wrote:D is the most feature rich language I know of. Maybe only Scala comes close, but Scala can be at times an unreadable mess as the designers of the language valued mixing functional and OO higher than readability. D, on the contrary, has a very clean design througout. But you are right. D is missing some unique selling point like ease of concurrency using Communicating Sequential Processes in Go or memory safety in Rust without a GC. This is because D does not have a business model, but seems to be seen as a playground for building the greatest language ever. I fear this will not change. Topics of people arguing that D needs a business case pop up regularly here and are every time mostly or also completely ignored. It does not look like this will change, because the main drivers of the language never drop a comment in those discussions.I noticed the issues for me is going beyond just the language. Its also productivity. Not going to hide that i switched to Pascal. There are some features that are needed in my case, where pascal has been kicking D's behind in my personal opinion. One of those has been frankly community support. Lets say there is a issue in D and one posts about it here. If your lucky, in a few hours there is a response. Then the response can be categorized as: * Friendly / Useful / Solve issue * Useless off-topic responds that does not answer the question but focuses on a complaint and ignores the issue. * Semi-aggressive answer that indeed solves the issue but one feels "intimidated" I have for a long time have a love / hate relationship with D. And the negative feels have always stemmed from the strange community. Its not just the Pascal community where i feel better, even in the Rust / Go community people feel like the have more patience or are less judgmental. Its this strange semi-aggressive that is her, that just feels so strange. I can not put my finger on it. All i can say is that i do not experience it in the same degree as with D. Lets say i bring up the issue: Plugin/DLL linking is a bore and needs to be more easy. Go made it easier with simply "-buildmode=plugin". In Pascal it only takes one keyword "library"... I can bring up a lot of topics like this where things are more easy in other languages and in D it requires at times hours to get something going but lets use this example. You will get people that agree but then at the same time point out: * Stop complaining about it, we do not have the people to add this. * Why don't you code it into the D source. * Agree but it will never happen. * We do not need this. * Why do you not pay for this feature. And every topic with a complained or suggestion comes down to this. They recently added Static foreach ... yay ... and i do not care a god daim thing because it only adds more C++ upper language focus but does not make the language or the platform more easy. And boy are people going to be annoyed for me writing this. But how about NOT always adding new feature and actually making things more easy for new people. The issue of D is not the pure language but this strange over focus on being the next C++ replacement that nobody is asking for! There are already a lot of other languages that can do C++ things, namely C++! You want no memory management, you go Rust, Pascal, ... Easy web development, Go, Crystal, hell Ruby, PHP. System development: C, C++, Rust... D is trying to win over a market with a mix of language feature that make it a master of none. And that shows... There are just too much things where D is lacking but people there is simply a lack of flow. Can not do X because of lack of money, people. Can not get more money because we lack X and people. Can not get more people because we lack X and money. And the circle keep going while attention is put on language feature when the language is already great but the whole sea of other issues outside the language get a minimal of attention.... I will not wast too much time on this because i can write on a piece of paper and know what the exact responses will be. And the end result became, i gave up on D. Switch to the freaking old Pascal language and got more stuff done in a few days time, then the semi-months with D. How strange it may sound. And hell, trust me, Pascal there documentation sucks in its 1980s style but still its so much more easy to connect the dots. People know my opinion on the current D doc system :) So its not just about modern styling and examples...
Jul 26 2017
On Wednesday, 26 July 2017 at 15:55:14 UTC, Wulfklaue wrote:The issue of D is not the pure language but this strange over focus on being the next C++ replacement that nobody is asking for! There are already a lot of other languages that can do C++ things, namely C++!Once upon a time D claimed to be a cleaned up and more convenient C++ style language, but I don't think it moved in that direction after the onset. So I don't view it as a C++ replacement, but more like an enthusiast language that more people toy with than use in production. If D actually moved to take on C++ then that would be sensible strategy, but at this point there is just too much baggage and C++ is now much more of a moving target than it was 10 years ago. So, D cannot assume that goal, as C++ is moving faster than D at the moment...There are just too much things where D is lacking but people there is simply a lack of flow.Well, you have to match ambitions to the resources. I think Go made the right decision there, to scale the language to something they could get to relatively stable in a reasonable amount of time, then work on the runtime. Not sexy, but useful.And the end result became, i gave up on D. Switch to the freaking old Pascal language and got more stuff done in a few days time, then the semi-months with D. How strange it may sound.Why Pascal, and not one of the more contemporary languages?
Jul 26 2017
On Wednesday, 26 July 2017 at 15:55:14 UTC, Wulfklaue wrote:But how about NOT always adding new feature and actually making things more easy for new people.People need to eventually understand that all the energy wasted for complaining about D/the community/whatever would be so much more valuable if put into contributions. I'm tired of these negative vibes, 'somebody else gotta do this in his/her spare time, I need it so bad!' paradigm. You for example reported a potential LDC issue you encountered (Visual Studio 2017 not autodetected), thanks for taking that time, but when I asked you to dig into it, you didn't even reply: https://github.com/ldc-developers/ldc/issues/2134. That's not the way issues are fixed and D can move forward, and neither is endlessly complaining about the (perceived) status quo. [I ignored this thread for now but was curious why it's still active, so I only read the last 2 posts.]
Jul 26 2017
On Wednesday, 26 July 2017 at 18:58:31 UTC, kinke wrote:People need to eventually understand that all the energy wasted for complaining about D/the community/whatever would be so much more valuable if put into contributions.Value is relative. So, if you don't use a tool in production why would you derive more value value from "improving" on the tool rather than analysing it to figure out why/why-not/how/how-not etc? Gaining insight might actually be more valuable…
Jul 26 2017
On Wednesday, 26 July 2017 at 19:27:06 UTC, Ola Fosheim Grøstad wrote:On Wednesday, 26 July 2017 at 18:58:31 UTC, kinke wrote:Well, D now have a Improvement Proposal system (DIP), the actual visibility of this process can surely improve I recommend looking at Tcl's TIP system, for inspiration In my opinion an Improvement Proposal system is a lot better than a roadmap, because you can very clearly see, what the community is talking about, which improvements have implementations, which are just ideas, which are approved which are not, some IP entries takes years to implement I think as the DIP system matures, it will help D a lot And dont worry about D, its been around for 16-17 years now, it may never be as big as Python, Ruby or Go But what is more important that it continues to be developed and improved and ... used Many languages have small communities and will continue to .. As long as D have a solid, bug free implementation, you have nothing to worry about .. and it doesnt have to be your only language .. honestly it should, now one language should be your only language, I would argue any developer can master 3 to 5 languages at any time ... try to pick ones that dont overlap much Python, SQl, R, .. D, DartPeople need to eventually understand that all the energy wasted for complaining about D/the community/whatever would be so much more valuable if put into contributions.Value is relative. So, if you don't use a tool in production why would you derive more value value from "improving" on the tool rather than analysing it to figure out why/why-not/how/how-not etc? Gaining insight might actually be more valuable…
Jul 26 2017
On Wednesday, 26 July 2017 at 19:56:01 UTC, Ali wrote:.. honestly it should, now one language should be your only language,DIP 9000, we need a real forum software, the above is a typo it should read "honestly it should not no one language should be your only language"
Jul 26 2017
On Wednesday, 26 July 2017 at 19:56:01 UTC, Ali wrote:And dont worry about D, its been around for 16-17 years now, it may never be as big as Python, Ruby or Go But what is more important that it continues to be developed and improved and ... usedI don't think anyone that don't use D in production worry about it. I simply don't think that many programming languages have any intrinsic value so it doesn't make a whole lot of sense telling people to "improve" on it if they haven't even adopted it (in production). For some simply understanding the landscape and nature of the evolution of open sourced programming languages (Rust, D etc) have more value than the languages themselves. So yeah, not sticking to any single language makes a lot of sense, they are just tools, means to an end, not goals in themselves and none of the current day languages are worthy of cultist behaviour…
Jul 26 2017
On Wednesday, 26 July 2017 at 20:23:25 UTC, Ola Fosheim Grøstad wrote:so it doesn't make a whole lot of sense telling people to "improve" on it if they haven't even adopted it (in production).My point was improving vs. complaining. Both take some analysis to figure out an issue, but then some people step up and try to help improving things and some just let out their frustration, wondering why noone has been working on that particular oh-so-obvious thing, and possibly drop out, like all the like-minded guys before them.
Jul 26 2017
On Wednesday, 26 July 2017 at 22:18:37 UTC, kinke wrote:My point was improving vs. complaining. Both take some analysis to figure out an issue, but then some people step up and try to help improving things and some just let out their frustration, wondering why noone has been working on that particular oh-so-obvious thing, and possibly drop out, like all the like-minded guys before them.Yeah, providing details about what failed so that others can improve on it if they want to is of course a sensible thing to do, but I think most of such "complaints" could be avoided by being up-front explicit about what a tool does well and what it doesn't do well. If I use a product and it breaks in an unexpected way I assume that not only that part is broken but that a lot of other parts are broken as well, i.e. I would assume it was alpha quality. And then the provider would be better off by marking it as such.
Jul 27 2017
On Wednesday, 26 July 2017 at 15:55:14 UTC, Wulfklaue wrote:On Wednesday, 26 July 2017 at 06:40:22 UTC, Bienlein wrote:I think I understand what you mean. You have to take into account that D is a pure spare time effort. As such it is an incredible language. The Go dev team has at least 5 people working on it full time and have a big big company behind it. Now compare D to Go and you can see how enormous the achievements of the D people are given their endowment situation to the one of the Go team. To me D is a great language and tool to create things in my spare time. It is also a great toll for university people that work on some research stuff. Developing commercial things with D is a different thing. You can still do this, but then you need to be aware that D cannot have the same rigour as some tool with a big company or a big industry behind it.D is the most feature rich language I know of. Maybe only Scala comes close, but Scala can be at times an unreadable mess as the designers of the language valued mixing functional and OO higher than readability. D, on the contrary, has a very clean design througout. But you are right. D is missing some unique selling point like ease of concurrency using Communicating Sequential Processes in Go or memory safety in Rust without a GC. This is because D does not have a business model, but seems to be seen as a playground for building the greatest language ever. I fear this will not change. Topics of people arguing that D needs a business case pop up regularly here and are every time mostly or also completely ignored. It does not look like this will change, because the main drivers of the language never drop a comment in those discussions.I noticed the issues for me is going beyond just the language. Its also productivity. Not going to hide that i switched to Pascal. There are some features that are needed in my case, where pascal has been kicking D's behind in my personal opinion. One of those has been frankly community support. Lets say there is a issue in D and one posts about it here. If your lucky, in a few hours there is a response. Then the response can be categorized as: * Friendly / Useful / Solve issue * Useless off-topic responds that does not answer the question but focuses on a complaint and ignores the issue. * Semi-aggressive answer that indeed solves the issue but one feels "intimidated" I have for a long time have a love / hate relationship with D. And the negative feels have always stemmed from the strange community. Its not just the Pascal community where i feel better, even in the Rust / Go community people feel like the have more patience or are less judgmental.
Jul 29 2017