packageless modules == pure evil? Answer: No

Bill Baxter dnewsgroup at billbaxter.com
Mon Feb 18 17:41:53 PST 2008


Derek Parnell wrote:
> On Tue, 19 Feb 2008 10:05:38 +0900, Bill Baxter wrote:
> 
>> Derek Parnell wrote:
>>> On Mon, 18 Feb 2008 15:13:44 +1100, Derek Parnell wrote:
>>>
>>>> On Mon, 18 Feb 2008 12:40:02 +0900, Bill Baxter wrote:
>>>>
>>>>> Here's a version that causes the problem.  It actually seems to be an 
>>>>> issue with build tools rather than DMD itself.
>>>> I'm using BUD v3.05 and I can't get it to go wrong. It works as expected in
>>>> all four conditions.
>>>>
>>>> PWD = packageless
>>>> bud testitok
>>>> bud b\testit
>>>>
>>>> PWD = packageless\b
>>>> bud ..\testitok
>>>> bud testit
>>>>
>>>> So I'm not sure what to do to help.
>>> <DUH manifestation="slaps forehead"> Oh I know what I can do ... release
>>> the version of Bud I'm using to the community.</DUH>
>>>
>> That would be great!  I know I've been eagerly waiting for the 
>> environment variable support that you've supposedly had implemented for 
>> about a year now.
> 
> Oh yeah ... I did do that. It now has a function called 'ExpandEnvVar'.
> 
> /*
>  Function to replace tokens in the form ...
>     %ENVNAME%
>     $ENVNAME  ( Terminated by a non-alpha character )
>     ${ENVNAME}
>     $(ENVNAME)
>  with environment data.
> 
>  Notes:
>  (1) '%%' is replaced by a single '%'
>  (2) '$$' is replaced by a single '$'
>  (3) The forms $(...) and ${...} can be nested.
>       eg. ${FOO${BAR}} - If 'BAR' is defined as "test" then this tries to
>                          find out what 'FOOtest' is defined as.
>  (4) The forms $(...) and ${...} can optionally have default values.
>       eg. $(FOO=yes) - if 'FOO' not defined it is expanded to 'yes'
>           $(BAR=${QWERTY}} - if 'BAR' not defined it is expanded to
>                              whatever 'QWERTY' is defined as.
>  (5) The form $(...) is expanded recursively.
>       e.g. $(FOO) - if 'FOO' is defined as "${BAR}" then the result
>                     is returned as whatever 'BAR' is defined as.
> */


Sweet!  Now just release that puppy, already!  Or stop teasing us with 
descriptions of functionality we can't have. :-P

--bb


More information about the Digitalmars-d-learn mailing list