project-ideas
project-ideas copied to clipboard
Integrate multiple D commandline utilities into one
Description
A single command that will bridge multiple D related applications like :
- dmd / rdmd / ldmd2 / gdmd2
- dfmt
- dfix
- dub
- dscanner
- dustmite
- ddemangle
- drepl
- etc.
Similar to busybox or the go command (yes i know i said the g-word :-)). It's a bit of a shame we would not be able to use do i guess. Until a better name comes along, assume we use the name do for now, then sub commands could be:
do compiledo builddo testdo repl|do clido profiledo initprojectdo umbrellado fixdo fmtdo scando mangledo generate [dub.sdl | dub.json | cmake-d]do convert [dub.sdl | dub.json | cmake-d]- etc
In the first interation it could just be a simple frontend to these other commands. As time progresses deeper integration would be possible, for example:
- parallelizing builds with smart compiler integration. Whereby dub could provide multiple paths/modules to be compiled and the compiler could generate backpressure when needed.
- have the compiler spit out suggestions to counteract deprecation's, which would in turn could generate a diff/patch generated by dfix and dfmt.
How does this project help the D community?
In the beginning, it would simplify user interaction and allow new users to get exposed to more of the available d-tools without having to search for them. When the integration progresses, it could smooth the way for to make changes to the language without large negative impact (as in the latter example).
References
I suggest dee for the name.
thats a dbus tool, what about dt
I suggest mars.
How about:
- "duh" (Patently obvious to the most casual observer.)
- "da" (Russian "yes")
- "doh" (Homer Simpson)
- "de" (Dutch version of "the")
ddt - D Development/Developer Tools.
Why not just call the command d? Sometimes the simplest solution is the best one.