# Emoji

Emoji is a stack-based esoteric programming language that uses emoji to manipulate the stack. In most cases, non-emoji characters are ignored.

## Tokens

```π¬: Read until the next π¬ and puts that string onto the stack
β½: Reads until the next π and puts that string onto the stack (can be nested, meant for storing functions)
β‘: Prints a value from the stack
π²: Puts True onto the stack
π³: Puts False onto the stack
π΄: Inverts a boolean value from the stack
π«: Adds two numbers from the stack
πͺ: Multiplies two numbers from the stack
π: Subtracts two numbers from the stack
π΄: Divides two numbers from the stack
πΈ: Divides two numbers from the stack, returns the remainder
πΏ: Rounds a number to the nearest integer
π₯: Rounds down a number from the stack
π€: Rounds up a number from the stack
π: Converts a number to a hex string
π’: Converts a string to a number
π¬: Checks if two numbers are equal
π£: Checks if a number is less than another
π: Checks if a number is greater than another
π: Takes a boolean from the stack.  If false, skips to the next π§.
π: If the last π did not skip past stuff, skip to the next π§.
π: Takes two strings from the stack.  Runs the first, takes a boolean.  If true, runs the second and repeats.
π₯: Duplicates a stack entry
π£: Converts a character to its character code
π: Converts a character code to its character
π²: Takes two objects, saves the first to a variable identified by the second
π±: Takes an object, returns the value from the variable by that name
π: Returns the length of a string or array from the stack
β: Takes a string and two numbers.  Returns the substring from the string from the first number (inclusive) to the second number (exclusive).
π: Evaluates a string
π: Creates an empty array.
π: Takes an array and an object.  Adds the object to the end of the array.  Does not return anything, you'll want to use variables with this.
π: Takes an array or string and an index.  Returns the value at that index.
π: Swaps two elements on the stack.
π: Capitalize a string.
π: Change a string to lowercase.
```

## Examples

### Hello World

```π¬Hello Worldπ¬β‘
```