Why version() ?

Ary Borenszweig ary at esperanto.org.ar
Tue Feb 10 08:18:03 PST 2009


Denis Koroskin wrote:
> On Tue, 10 Feb 2009 17:14:00 +0300, Don <nospam at nospam.com> wrote:
> 
>> Derek Parnell wrote:
>>> On Tue, 10 Feb 2009 13:08:03 +0100, Don wrote:
>>>
>>>> A&&B is not so terrible, since you can do it by nesting, as above.
>>>> The big problem is A || B. It creates a mess.
>>>  version(A) version = AorB;
>>> version(B) version = AorB;
>>> version(AorB) {
>>>   . . .
>>> }
>>>
>> Yes. And that sucks, because you've got the version statement in two 
>> places. And you've had to create an essentially meaningless temporary. 
>> [1] Then when you have a more complex expression, especially where A 
>> and B appear more than once, it gets disgusting.
>>
>>
>> [1] I know Walter's idea is that you create meaningful identifiers, 
>> but in practice this kind of versioning can be a workaround. EG B is 
>> "everything except WindowsME".
> 
> Version has so many shortcomings that it should definitely be redesigned.
> 
> My biggest complaint is that code inside version () {} block should be 
> semantically correct.

Just syntactically correct.



More information about the Digitalmars-d mailing list