More on Rust

Jacob Carlborg doob at me.com
Fri Feb 11 00:48:11 PST 2011


On 2011-02-11 08:39, Jim wrote:
> Jacob Carlborg Wrote:
>
>> On 2011-02-10 20:15, Walter Bright wrote:
>>> Nick Sabalausky wrote:
>>>> "bearophile"<bearophileHUGS at lycos.com>  wrote in message
>>>> news:iivb5n$na3$1 at digitalmars.com...
>>>>> auto x;
>>>>> if (localtime().hours>= 8) {
>>>>> x = "awake!"
>>>>> } else {
>>>>> x = "asleep, go away."
>>>>> }
>>>>> log "I'm " + x;
>>>>>
>>>>
>>>> That would be really nice to have in D.
>>>
>>>
>>> auto x = (localtime().hours>= 8) ? "awake!" : "asleep, go away.";
>>
>> For this simple if statement it works but as soon you have a few lines
>> in the if statement it will become really ugly. But one could wrap the
>> if statement in a function instead. In other languages where statements
>> really are expressions this works:
>>
>> auto x = if (localtime().hours>= 8)
>>               "awake!";
>>            else
>>               "asleep, go away.";
>>
>> log "I'm " + x;
>
>
>
> Other languages may have bloated syntaxes, with no particular benefit.
>
>
> auto x = localtime().hours>= 8 ?
> 	"awake!"
> 	:
> 	"asleep, go away.";
>
> log( "I'm " ~ x );
>
>
> If the expressions are complex I put them in functions.
> 1) It hides and isolates details, which allows you to focus on the more abstract aspects.
> 2) It gives the expression a name and facilitates reuse.

And that was the first thing I said one could do.

-- 
/Jacob Carlborg


More information about the Digitalmars-d mailing list