On Thursday, 1 February 2018 at 11:21:37 UTC, Russel Winder wrote:
D should be proud of having a reference compiler, a GCC-based one, and an LLVM-based one. This is a Good Thing™, let no-one undermine this.

Nothing wrong with choice as long as that choice does not introduces issues. Currently there are 3 compilers but also 3 different ways to install ( depending on the platform ). DMD has a installer, LDC needs a manual copy job + path creation, GDC did not even bother with ( sorry ).

Let alone 'conflicts':

Example: Install DMD ( what has its own DUB ) but also install LDC ( what has its own DUB), now lets say both version have different dub versions. Yes, this happened to me and it conflicted with some of the Editor plugins their build process because the wrong "version" of dub got selected during the build process. Its not really a bug but a issue that can trip people ( lost a hour on that one ).

Other issues can be that it makes conversations difficult. When new people read DMD, LDC, GDC in these forums, you can just as well be speaking Mandarin ( Chinese ).

Suggestion:

Is it maybe not better to have one "front-end" compiler visible that people download

Example:

D run main.d
D run main.d --compiler ldc ( not installed? Auto download and compile using dub )
D run main.d --compiler ldc --options -o3
D run main.d --compiler gdc ( not installed? Auto ...)

D package install web-d

Seen this layout with a some other compilers where everything is clean integrated.

- Compiler ( default )
-- Run
-- Test

- Package
-- Install
-- Remove
-- Update

- Tools
--- Format
--- Check
- Language server?

No dub, no ldc, gdc, no confusion, just one clean interface. What happens behind the interface is nobody there business. It just presents better.

Dub already does half this work with the compiler option but its a package manager not the "face of D". Hard to explain...

Anyway, too much off-topic?

Reply via email to