3 ms·
Is it normal to notate powers using double caret notation? (i.e. ^^) I've only ever seen it using a single caret (^), in what presumably is meant to correspond
by 14113 12y ago
Is it normal to notate powers using double caret notation? (i.e. ^^) I've only ever seen it using a single caret (^), in what presumably is meant to correspond to an ascii version of Knuth up arrow notation (https://en.wikipedia.org/wiki/Knuth's_up-arrow_notation https://en.wikipedia.org/wiki/Knuth's_up-arrow_notation).
I found it a bit strange, and confusing in the article having powers denoted using ^^, and had to go back to make sure I wasn't missing anything.
- Sidnicious 12y agoIt's likely to distinguish it from XOR, which is the carat operator in many programming languages.
- kevin_thibedeau 12y agoIt is still weird. * * is the other established convention used for exponentiation in languages like Python, Ada, m4, and others.
- merraksh 12y agoBut * * has an entirely different meaning in C/C++.
- taejo 12y agoOnly as a prefix operator; * has a pointer-related meaning for prefix and an arithmetic meaning for infix, there's no reason * * shouldn't be the same.
- phs2501 12y agoThat'd be a syntactic ambiguity (in C-type languages) between "a * * b" being a to the power of b (i.e. "(a) * * (b)") or "a * * b" being a times the dereferencing of the pointer b (i.e. "(a) * (*b)"). You may be able to disambiguate this by prescedence, though it would be very ugly in the lexer (you could never have a STARSTAR token, it would have to be handled in the grammar) and would be terribly confusing.
- judk 12y agoIt's math, not computer code. ^ means exponentiatuon. The author was just being weird.
- 14113 12y agoUnderstandable, but in every other mathematical context (LaTeX for example) a single caret is used as the exponential operator. I guess it's just a convention that's different in different cultures/crowds.