Entry point a la "git" or "go"
Chris via Digitalmars-d
digitalmars-d at puremagic.com
Thu Jun 4 02:48:42 PDT 2015
On Sunday, 31 May 2015 at 23:56:42 UTC, Idan Arye wrote:
> On Sunday, 31 May 2015 at 23:11:24 UTC, Andrei Alexandrescu
> wrote:
>> There's this recent trend seen with git and go - all tooling
>> is entered by a single command.
>>
>> Are there advantages to doing the same for our toolchain?
>> (Consider it'll include things such as dub, dfix, and dformat
>> in the future.) Something like "dc", a program that parses the
>> command line and dispatches it to the appropriate tool(s).
>>
>> How would this add value to our toolchain?
>>
>>
>> Andrei
>
> This is creating a "namespace", which has all sorts of benefits:
>
> 1) Easier help - `dc --help` shows basic description of all
> subtools.
>
> 2) Better names - since all tools reside in the `dc` command
> anyways they can have names based on what they do and not some
> acronym or a made-up project name. Instead of `dub` and `rdmd`
> we can have `dc build` and `dc run-script` - which convey what
> they do right away.
>
> 3) Containment - since all tools are under `dc`, and assuming
> `dc` can have some general-purpose flags, it's easier to build
> wrappers around it. You've mentioned git - there is a Git
> plugin for Vim called Fugitive that in addition for
> implementing commands that give special treatment wrapping to
> some Git commands, also offers the general `:Git` command, that
> can run any Git command you like and sets the general `git`
> flags to play better with Vim. It can do so because all Git
> commands start with `git `. Not sure yet how this property of
> single-entry-point-tool-chain will benefit D though - it
> depends on what the general flags for `dc` will be...
It would also make it easier to integrate the tools into an IDE.
Yeah, definitely, it'd be nice to have a one-stop executable
(similar to dub). I like `dlang`. E.g. to build with GDC:
dlang build release gdc
Maybe (on Windows) an option for DLLs and linking to C libraries
would be nice too.
More information about the Digitalmars-d
mailing list