yank unary '+'?
Don
nospam at nospam.com
Sun Dec 6 12:46:39 PST 2009
Walter Bright wrote:
> Andrei Alexandrescu wrote:
>> Is there any good use of unary +? As an aside, Perl programs do use it
>> occasionally for syntactic disambiguation :o).
>
> An internet search reveals:
>
> 1. symmetry
I think it makes sense for literals. Not for anything else though.
Since + is a no-op, it just causes confusion.
> 2. compatibility with C and many other languages that use it
That matters only if those other languages actually have a use for it.
> 3. used with operator overloading to convert a user defined type to its
> preferred arithmetic representation (a cast can't know what the
> 'preferred' type is)
> 5. to coerce default integral promotion rules (again, cast(int) won't
> always produce the same result)
This one is interesting, and might be the strongest argument, but I
don't understand it. An example would be interesting.
> 4. to create DSL languages, like Spirit, as Kenny points out
If we are to have a feature specifically for DSL languages, it's not
hard to come up with something more useful...
(From memory, Spirit uses it as the nearest available approximation to
postfix +).
> 6. to visually emphasize that a literal is positive
Yes, I think this is the strongest. But this doesn't need unary + in
general, I don't think. Just for numeric literals.
More information about the Digitalmars-d
mailing list