Exponentiation Operator

Specification

Status

Stage 3

Implementation Progress

Authors

  • Rick Waldron
  • Claude Pache
  • Brendan Eich

Reviewers

  • Brian Terlson
  • Erik Arvidsson
  • Dmitry Lomov
  • Cait Potter
  • Jason Orendorff
  • Waldemar Horwat

Informative

  • Commonly used in mathematics, physics and robotics.
  • Infix notation is more succinct than function notation, which makes it more preferable

Prior Art

  • Python
    • math.pow(x, y)
    • x ** y
  • CoffeeScript
    • x ** y
  • F#
    • x ** y
  • Ruby
    • x ** y
  • Perl
    • x ** y
  • Lua, Basic, MATLAB, etc.
    • x ^ y

Usage

// x ** y

let squared = 2 ** 2;
// same as: 2 * 2

let cubed = 2 ** 3;
// same as: 2 * 2 * 2
// x **= y

let a = 2;
a **= 2;
// same as: a = a * a;



let b = 3;
b **= 3;
// same as: b = b * b * b;

Render Spec

ecmarkup spec/index.html index.html