On Monday, 31 July 2017 at 07:22:06 UTC, Maxim Fomin wrote:
Good to see D is progressing! I was active forum and bugzilla
participant in 2011-2013. Since then I have not touched D.
Good to see you back. I also took a hiatus from D in 2015 and
just recently returned after GDC fixed a blocker for me. I'll
comment on what I've observed.
1) Support of linking in win64? AFAIK Walter introduced win64
support in circa 2012 which was the big progress. However,
support for win64 linking was limited because dmd defaulted on
old dmc linker, and Walter didn't plan to do anything with this.
Haven't used D on Windows. Don't know.
2) What is the support of other platforms?
I'm currently only using D for bare-metal type projects and some
desktop utilities to support that development. DMD has added
some improvements to -betterC
(http://forum.dlang.org/post/cwzmbpttbaqqzdetw...@forum.dlang.org) but I'm not really interested in that feature as I'd like to use all of D for bare-metal, just in a pay-as-you-go fashion. The compiler is still too tightly coupled to the runtime, but there have been some improvements (https://www.youtube.com/watch?v=endKC3fDxqs)
3) What is the state of GC?
From what I can tell, aside from a few improvements to metering
the GC, most endeavors have not materialized.
4) What is the state of GDC/LDC?
GDC was recently accepted for inclusion in GCC (version 8 I
believe): https://gcc.gnu.org/ml/gcc/2017-06/msg00111.html
5) What is the progress with CTFE? I see a lot of discussions
in forum archive devoted to the development of CTFE. What is
the summary of CTFE development in recent years?
I believe there is an effort to overhaul CTFE, but it is ongoing
and not yet committed.
6) I don't see any significant changes in D core from dlang
documentation (except those mentioned in changelog for
2014-2017). Is is true or is the official spec as usual delayed
:)? Is dlang spec fully and frequently updated or is it sparse
as in the past?
I haven't seen any improvements to filling holes in the spec. I
believe the semantics of 'shared' are still undefined.
I have seen significant improvements to the website/documentation
with runnable examples and such.
8) What is the progress with shared and immutable? AFAIK the
compiler support for shared was not complete and Phobos library
itself was not 'immutable-' and 'shared-correct'.
AFAIK nothing in that regard has changed.
9) Does D gains popularity?
Not sure. I've seen some talent in the D community depart, some
new talent emerge, some talent participating less, and some
talent taking on more.
10) Anything else 2013 D user must know? :) I don't ask about
Phobos because according to the changelog the progress is
enormous, incremential and targets several directions - I doubt
it can be easily summarised...
* Formal creation of the D Language Foundation
* DMD frontend converted to D
* DMD backend converted to boost license
(http://forum.dlang.org/post/oc8acc$1ei9$1...@digitalmars.com)
* DIP1000 merged under the -dip1000 feature gate
(https://github.com/dlang/DIPs/blob/master/DIPs/DIP1000.md)
* Walter claims memory safety will kill C
(https://www.reddit.com/r/cpp/comments/6b4xrc/walter_bright_believes_memory_safety_will_kill_c/), and if you have any faith in the TIOBE index, it may already be happening (https://www.tiobe.com/tiobe-index/)
* Lots of infrastructure improvments (dlang-bot and other CI
automation)
Overall, though, I'd say D is just further along on the path it
was on in 2013. If you were hoping for a new direction, you'll
probably be disappointed.
Mike