- Erlang - Web Programming
- Erlang - Drivers
- Erlang - Performance
- Erlang - Concurrency
- Erlang - OTP
- Erlang - Distributed Programming
- Erlang - Ports
- Erlang - Databases
- Erlang - Emails
- Erlang - Processes
- Erlang - Funs
- Erlang - Binaries
- Erlang - BIFS
- Erlang - Guards
- Erlang - Pattern Matching
- Erlang - Preprocessors
- Erlang - Header Files
- Erlang - Macros
- Erlang - Exceptions
- Erlang - Records
- Erlang - Tuples
- Erlang - Maps
- Erlang - Atoms
- Erlang - File I/O
- Erlang - Lists
- Erlang - Strings
- Erlang - Numbers
- Erlang - Recursion
- Erlang - Modules
- Erlang - Functions
- Erlang - Decision Making
- Erlang - Loops
- Erlang - Operators
- Erlang - Variables
- Erlang - Data Types
- Erlang - Shell
- Erlang - Basic Syntax
- Erlang - Environment
- Erlang - Overview
- Erlang - Home
Erlang Useful Resources
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Erlang - Operators
An operator is a symbol that tells the compiler to perform specific mathematical or logical manipulations.
Erlang has the following type of operators −
Arithmetic operators
Relational operators
Logical operators
Bitwise operators
Arithmetic Operators
Erlang language supports the normal Arithmetic operators as any the language. Following are the Arithmetic operators available in Erlang.
Operator | Description | Example |
---|---|---|
+ | Addition of two operands | 1 + 2 will give 3 |
− | Subtracts second operand from the first | 1 - 2 will give -1 |
* | Multippcation of both operands | 2 * 2 will give 4 |
/ | Division of numerator by denominator | 2 / 2 will give 1 |
rem | Remainder of spaniding the first number by the second | 3 rem 2 will give 1 |
span | The span component will perform the spanision and return the integer component. | 3 span 2 will give 1 |
Relational Operators
The Relational Operators allow the comparison of objects. Following are the relational operators available in Erlang.
Operator | Description | Example |
---|---|---|
== | Tests the equapty between two objects | 2 = 2 will give true |
/= | Tests the difference between two objects | 3 /= 2 will give true |
< | Checks to see if the left object is less than the right operand. | 2 < 3 will give true |
=< | Checks to see if the left object is less than or equal to the right operand. | 2 =<3 will give true |
> | Checks to see if the left object is greater than the right operand. | 3 > 2 will give true |
>= | Checks to see if the left object is greater than or equal to the right operand. | 3 >= 2 will give true |
Logical Operators
These Logical Operators are used to evaluate Boolean expressions. Following are the logical operators available in Erlang.
Operator | Description | Example |
---|---|---|
or | This is the logical “or” operator | true or true will give true |
and | This is the logical “and” operator | True and false will give false |
not | This is the logical “not” operator | not false will give true |
xor | This is the logical exclusive “xor” operator | True xor false will give true |
Bitwise Operators
Erlang provides four bitwise operators. Following are the bitwise operators available in Erlang.
Sr.No. | Operator & Description |
---|---|
1 |
band This is the bitwise “and” operator |
2 |
bor This is the bitwise “or” operator |
3 |
bxor This is the bitwise “xor” or Exclusive or operator |
4 |
bnot This is the bitwise negation operator |
Following is the truth table showcasing these operators −
p | q | p & q | p | q | p ^ q |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
1 | 0 | 0 | 1 | 1 |
Operator Precedence
The following table shows the Operator Precedence for the Erlang operators in order of descending priority together with their associativity. Operator precedence and associativity are used to determine the evaluation order in un-parenthesized expressions.
Operators | Associativity |
---|---|
: | |
# | |
bnot,not | |
/,*,span,rem,band,and | Left associative |
+,-,bor,bxor,or,xor | Left associative |
==,/=,=<,<,>=,> |