Don: > Originally it worked the other way, but bearophile complained about it, > so it got changed to this way <g>.
If I port Python code to D I prefer the current design. I have opened this thread to see if there are ways to mitigate some of the future problems caused by that :-) Of my past design decisions about D I regret of suggesting Walter the name "immutable". Its meaning is very clear and it's the correct word, but it's a bit too much long to type, and I am using it often :-| (but less often than const, fortunately). Maybe "imm" or "immu" was better :-) --------------------- Manu: > What I wonder is why this operator is necessary at all? It's not necessary, like most other features in a language, like for loops. But it's handy and very useful, I am now using one power operator about every 40 or 50 lines of D2 code. Instead of writing: result = (complex expression) * (complex expression); Or: const aux = complex expression; result = aux * aux; You write: result = (complex expression) ^^ 2; And it gets better with cubes. I think ^^ operator is currently lacking one overload still, it's discussed a bit in one of the Bugzilla answers written by Don, I think regarding BigInts. -------------- Mail Mantis: > Maybe it would be good to always require explicit parenthesis in such > expressions? Is this wise and good? Bye, bearophile
