May 21, 2013 new DIP41: dmd/rdmd command line overhaul. | ||||
---|---|---|---|---|
| ||||
Attachments:
| Abstract: This DIP seeks to improve dmd and rdmd's command line flags, to make it more self-consistent and consistent with other tools (including other D compilers), more expandable, avoid existing corner cases, and better interact with other tools such as rdmd. It also proposes new flags and proposes a simple deprecation path to follow. Link: http://wiki.dlang.org/DIP41 |
May 21, 2013 Re: new DIP41: dmd/rdmd command line overhaul. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Timothee Cour | On Tuesday, 21 May 2013 at 09:45:19 UTC, Timothee Cour wrote:
> Abstract:
> This DIP seeks to improve dmd and rdmd's command line flags, to make it
> more self-consistent and consistent with other tools (including other D
> compilers), more expandable, avoid existing corner cases, and better
> interact with other tools such as rdmd. It also proposes new flags and
> proposes a simple deprecation path to follow.
>
> Link:
> http://wiki.dlang.org/DIP41
Had only a quick read through but I like proposed changes overall. Current situation looks rather inconsistent and archaic. Don't know how much trouble proposed migration path will cause for large projects with custom build systems though.
|
May 21, 2013 Re: new DIP41: dmd/rdmd command line overhaul. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Timothee Cour | On Tuesday, 21 May 2013 at 09:45:19 UTC, Timothee Cour wrote:
> Abstract:
> This DIP seeks to improve dmd and rdmd's command line flags, to make it
> more self-consistent and consistent with other tools (including other D
> compilers), more expandable, avoid existing corner cases, and better
> interact with other tools such as rdmd. It also proposes new flags and
> proposes a simple deprecation path to follow.
>
> Link:
> http://wiki.dlang.org/DIP41
Looks good. But I would add one more. I'd like a dmd-specific flag for specifying the library path. Of course, on posix systems it's '-L-L/some/path', but I never can remember the format for OPTLINK (it involves a '+') and don't know offhand what it is for VS. In my build scripts, I just keep my libs local to the project tree and pass the full path of each library in order to avoid the hassle of trying to accommodate each possible linker. I'd love a new flag that would allow passing the libpath to DMD and let it handle putting it in the appropriate format for the current linker.
|
May 21, 2013 Re: new DIP41: dmd/rdmd command line overhaul. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Timothee Cour | On 2013-05-21 11:44, Timothee Cour wrote: > Abstract: > This DIP seeks to improve dmd and rdmd's command line flags, to make it > more self-consistent and consistent with other tools (including other D > compilers), more expandable, avoid existing corner cases, and better > interact with other tools such as rdmd. It also proposes new flags and > proposes a simple deprecation path to follow. Looks good. -- /Jacob Carlborg |
May 21, 2013 Re: new DIP41: dmd/rdmd command line overhaul. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mike Parker | On 2013-05-21 15:44, Mike Parker wrote: > Looks good. But I would add one more. I'd like a dmd-specific flag for > specifying the library path. Of course, on posix systems it's > '-L-L/some/path', but I never can remember the format for OPTLINK (it > involves a '+') and don't know offhand what it is for VS. In my build > scripts, I just keep my libs local to the project tree and pass the full > path of each library in order to avoid the hassle of trying to > accommodate each possible linker. I'd love a new flag that would allow > passing the libpath to DMD and let it handle putting it in the > appropriate format for the current linker. I wouldn't mind having that. -- /Jacob Carlborg |
May 21, 2013 Re: new DIP41: dmd/rdmd command line overhaul. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Timothee Cour | On Tuesday, 21 May 2013 at 09:45:19 UTC, Timothee Cour wrote:
> Abstract:
> This DIP seeks to improve dmd and rdmd's command line flags, to make it
> more self-consistent and consistent with other tools (including other D
> compilers), more expandable, avoid existing corner cases, and better
> interact with other tools such as rdmd. It also proposes new flags and
> proposes a simple deprecation path to follow.
>
> Link:
> http://wiki.dlang.org/DIP41
Too many DIPs, none of which is actually implemented.
Looks like your strategy is flawed.
|
May 21, 2013 Re: new DIP41: dmd/rdmd command line overhaul. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Timothee Cour | On Tuesday, 21 May 2013 at 09:45:19 UTC, Timothee Cour wrote:
> Abstract:
> This DIP seeks to improve dmd and rdmd's command line flags, to make it
> more self-consistent and consistent with other tools (including other D
> compilers), more expandable, avoid existing corner cases, and better
> interact with other tools such as rdmd. It also proposes new flags and
> proposes a simple deprecation path to follow.
>
> Link:
> http://wiki.dlang.org/DIP41
Regarding your suggestion about run arguments for rdmd - the convention is to use `--`:
dmd main.d src1.d -- myfirstprogramarg
Beside being the convention, it's shorter and easier to type than `-args`, and it stands out more.
|
May 21, 2013 Re: new DIP41: dmd/rdmd command line overhaul. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Timothee Cour | On 5/21/13 5:44 AM, Timothee Cour wrote:
> Abstract:
> This DIP seeks to improve dmd and rdmd's command line flags, to make it
> more self-consistent and consistent with other tools (including other D
> compilers), more expandable, avoid existing corner cases, and better
> interact with other tools such as rdmd. It also proposes new flags and
> proposes a simple deprecation path to follow.
>
> Link:
> http://wiki.dlang.org/DIP41
I think this DIP should be rejected. Even if implemented to perfection it would do nothing to make D better.
Overhauling command line syntax would only help if the situation was unbearable or if people couldn't do what they wanted to do. As things go I find the situation marginally clunkier than it could be, but command line syntax can never be beautiful or perfect.
Andrei
|
May 21, 2013 Re: new DIP41: dmd/rdmd command line overhaul. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrei Alexandrescu | On 5/21/2013 8:29 AM, Andrei Alexandrescu wrote:
> On 5/21/13 5:44 AM, Timothee Cour wrote:
>> Abstract:
>> This DIP seeks to improve dmd and rdmd's command line flags, to make it
>> more self-consistent and consistent with other tools (including other D
>> compilers), more expandable, avoid existing corner cases, and better
>> interact with other tools such as rdmd. It also proposes new flags and
>> proposes a simple deprecation path to follow.
>>
>> Link:
>> http://wiki.dlang.org/DIP41
>
> I think this DIP should be rejected. Even if implemented to perfection it would
> do nothing to make D better.
>
> Overhauling command line syntax would only help if the situation was unbearable
> or if people couldn't do what they wanted to do. As things go I find the
> situation marginally clunkier than it could be, but command line syntax can
> never be beautiful or perfect.
I generally agree with Andrei here. People hate it when their makefiles break. There needs to be an awfully good reason to do it, not just clean up.
Also,
dmd -man
suffices for "long help". There is no reason to have 3 different help texts.
|
May 21, 2013 Re: new DIP41: dmd/rdmd command line overhaul. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright Attachments:
| On Tue, May 21, 2013 at 9:05 AM, Walter Bright <newshound2@digitalmars.com>wrote: > I generally agree with Andrei here. People hate it when their makefiles >> break. There needs to be an awfully good reason to do it, not just clean up. > > > In that post you seemed to agree: http://forum.dlang.org/post/kk4ejt$1pnq$1@digitalmars.com >> I agree. The way to do it is to support both the old and the new ways for now. Anyone want to do a pull req? Also, this should be put in bugzilla as an enhancement request. |
Copyright © 1999-2021 by the D Language Foundation