# What are Formulas?

Tabula's formula language has a lot to offer, with hundreds of functions quite similar to your favorite ones in Excel and SQL. Formulas can be as simple as a single number or as complex as a function call or mathematical formula.

### Operators

• Regular math operators: `+`, `-`, `*`,`/`,`%`
• Comparison operators (evaluate to booleans): `>`, `>=`, `<`, `<=`, `==`, `!=`, `<>`. These are used to compare two values and produce a boolean result (true or false).
• Logical operators: `!` , `&&` , `||` (also support `not`, `and`, `or` variation). These operators are used to manipulate boolean values.
• String concatenation operators: `|` . This is used to combine two or more strings into one.

### Expressions

• Literal: represents a fixed value, like a number, "string", boolean (true, false), or a reference.
• Unary: composed of a single operand and an operator. The operator can precede the operand `-expression`, `!expression`
• Binary: consists of two operands and an operator `expression ``operator`` expression`.
• Grouping: expressions can be grouped using parentheses `(``expression``)` to control the precedence of evaluation.
References in expressions can be made to:
• Column by name: this allows for operations on specific columns in a data table.
• REGEX Path to values in the specified columns: this allows for complex data manipulation using regular expressions.
• Constants and enums: these can be used as parameters in functions.