On Saturday, 23 July 2016 at 14:24:08 UTC, Matthias Klumpp wrote:
On Saturday, 23 July 2016 at 11:40:20 UTC, qsdjlf wrote:
integration in distribution could be a good signal, what a
say, Excellent signal, for the D language. I know that some
people here are mostly starving at commercial usage...but for
me such tools written in D and available in linux distros via
their package manager would be a much more significant sign.
It is also something that brings people to D - a good toolchain
and many projects using D and being established in Linux
distributions is a *huge* influence.
Unfortunately, D is still a bit painful in Linux distros.
Those issues should be resolved to make integration easier:
1) Stable ABI for the D language which ideally also works
2) Fixing dub bugs and adding features - at time, dub is pretty
unusable for distro packaging, which is why we use Terminix'
Specifically, these issues need to be addressed:
- Find & use system dub packages:
- Make dub compile by-file and not compile everything with one
compiler command (for very large projects this makes
parallelization hard and can also bring down less powerful
- Add "dub install" to install a project:
- "dub test" shouldn't override the main binary, otherwise we
can't run tests properly in distros at compile-time:
3) Making LDC available for more architectures, or making GDC
support a higher version of the Phobos standard library and
build shared libraries.
At time, LDC is the better fit because of shared library
support and higher Phobos version. Current D projects are hard
to compile with GDC because of the latter reason.
More architectures are not per-se essential, but would be
awesome to have. This feature request summarizes the status of
arch support for D in free compilers:
4) Resolving weird LDC bugs like this one:
https://github.com/ldc-developers/ldc/issues/1618 - might
actually be an LLVM issue, but I don't know enough to pin down
5) Have hardening supported for the D compilers:
6) Ideally have the free D compilers agree on a common set of
compiler options, like clang supports gcc compiler flags. That
allows distros to apply compiler flags globally, e.g. to enable
Of these points 1, 2 and 4 are very important, 3 would be
really nice to have and 5 and 6 would be going the extra mile
to make D awesome in distros and us as distribution vendors
+1 very good post. Good lightening of the problem.