rund users welcome
Jonathan Marler
johnnymarler at gmail.com
Sun Sep 9 04:32:32 UTC 2018
On Sunday, 9 September 2018 at 03:33:49 UTC, Vladimir Panteleev
wrote:
> On Saturday, 8 September 2018 at 04:24:20 UTC, Jonathan Marler
> wrote:
>> I've rewritten rdmd into a new tool called "rund" and have
>> been using it for about 4 months. It runs about twice as fast
>> making my workflow much "snappier". It also introduces a new
>> feature called "source directives" where you can add special
>> comments to the beginning of your D code to set various
>> compiler options like import paths, versions, environment
>> variable etc. Feel free to use it, test it, provide feedback,
>> contribute.
>
> Thanks!
>
> I tried integrating it into my scripts as an rdmd replacement.
Cool thanks for giving it a try.
> Currently, the following are missing:
>
> - -od (e.g. for -od.)
Hmmm, yeah it looks like rund is currently overriding this. I've
attempted a fix but it's hard to cover all the different
combinations of -of/-od/etc. I'll need to fill out the rest of
the tests soon.
> - --build-only should imply -od.
Maybe...I actually have use cases where I want "--build-only" but
want the executable to be built in the normal cache location.
Build the program and cache it but don't run it yet.
> - No --main, though that can probably be substituted with -main
Yeah, I don't see any reason to duplicate the flag already
supported by dmd. Maybe there's a reason I'm not aware of.
> - The .d extension is not implied, like for dmd/rdmd
I haven't come up with any reasons to support this. Maybe you
can enlighten me?
>
> Also, --pass is weird. Why not use the standard-ish -- ?
It is a bit weird. I've never had a reason to use this option
myself. Is this the syntax you are thinking of?
rund other.d main.d -- <program-args>...
The problem with this is it's not "composable". Say you were
running a D program that also used "--", then it's ambiguous
whether the "--" belongs to rund or to the program being
compiled. But maybe I'm missing something? If you have an idea
that's less weird than "--pass=<src>.d" then I'm all for it :)
>
> Was there a problem with the idea of forking rdmd? The above
> plus things like its -lib support would then not be needed to
> be reimplemented.
I would actually consider this a "fork" of rdmd. But I rebuilt
it from the ground up, re-integrating each feature one by one so
I could ensure they were "cohesive". I also haven't integrated
all features from rdmd yet. I will probably integrate more of
them when I see the need. So far it's just been me using it so
that's why I want to get people using it so we can flush out the
rest.
The big difference with rdmd and rund is that rund is not
compatible with compilers that don't support "-i". Since this is
such a fundamental change, I thought a rename made sense, and
"rund" fits the modern times where we have more D compilers than
just dmd.
More information about the Digitalmars-d
mailing list