Brackets

There are five types of brackets: parentheses (), square brackets [], curly braces {} (arrays), absolute value brackets ||, and comment brackets \\. Only parentheses and square brackets can hold multiple parameters for functions. Curly braces can be used for functions called with only one parameter.

Curly braces are used to evaluate multiple values within an expression and return each solution. Absolute value brackets will return the absolute value of its expression, identical to the "abs" function.

When inserting brackets:

  • If an identical adjacent bracket is present and disabled, it becomes enabled.
  • If an identical disabled bracket is present in the parent set, that bracket is enabled and moved to the caret position.
  • Otherwise, a new set of brackets is created.

When deleting brackets:

  • If the corresponding bracket is disabled, the set is dissolved and the contents are left in place of the brackets.
  • Otherwise, the bracket is disabled and moved to the farthest position.
Assignment

The assignment operator is used to declare variables and functions. It can be inserted by typing two = signs, or typing "sto", "store", or "assign". It accepts a variable on the left side, with an optional brackets to define a function. The right side must be an expression, which cannot contain other assignment operators.

Assignments must be at the beginning of a statement, and must be declared in the order that they are used or called. The only exception is when used in the expression, which is evaluated after all declarations.

When defining a function, the parameter brackets must be parentheses or square brackets. Parameters are local variables which will override any conflicting global variables while used within the function expression. They can be assigned default values by using the assignment operator in the normal manner; the evaluation of this default value will be used whenever the function is called without that specific argument.

Formatting

There are three types of formatting elements: new lines, spaces, and comments. Although they appear to split things, the expression is evaluated as if any of these didn't exist. Numbers separated by spaces are treated as a single number, along with all other types of elements. The same behavior applies to new lines and comments.

  • New lines can be inserted using ShiftEnter.
  • Spaces are inserted normally using Space.
  • Comments are inserted using \, and act the same as brackets. All features work as normal inside, and it is displayed using a grey color.

Subscripts

Subscripts are inserted with the ' key. They have two functions:

  • When appended to variables (or declared functions), they represent a string used to uniquely identify separate variables.
  • When appended to a logarithm function, the contents are evaluated as an expression that represents the base of the logarithm.

Superscripts

Superscripts are inserted with the " key. They are visually identical but functionally distinct from exponents. When preceding a root, it is an expression that represents the radix of the root.

Exponents

Exponents are inserted with the ^ key.

  • When appended to numbers, variables, or brackets, it raises that term to the exponent.
  • When appended to a function (before the function argument), the value of the function result is raised to the exponent.
  • In the case of triginometric and hyperbolic functions, an exponent of "-1" will be replaced with the inverse of that function.

Suggestions

When typing alphabetical strings or characters, every letter will be inserted as an individual variable. Text preceding the caret will be checked for the longest match from known strings, and the suggested element will be displayed in a small box below the caret. When a suggestion is available, pressing Tab will replace the matched text with the suggested element.

Composing

Some platforms allow inserting special characters using methods such as CtrlShift then U followed by a hexadecimal code for a Unicode character, or when typing while using predictive text to fill words.

On platforms which support this behavior, a small box will appear below the caret to show the text currently being composed. After composition ends, the composed text will be inserted as a string.

Some implementations of predictive text and autocorrect will attempt to immediately paste the text being suggested, which can result in many undesired strings being automatically inserted. Any automatic text manipulation should be disabled, but some browsers or devices will ignore this.

More webpages