Skip to content

AndrewMurtagh/emojilang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

9 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ™ƒ emojilang

emojilang is a toy language comprised only of emojis.

Syntax

# control structures
πŸ€” - if
πŸ”₯ - while

# boolean operators
🌘 - <
πŸŒ’ - >
πŸŒ– - <=
πŸŒ” - >=
πŸŒ• - ==
πŸŒ‘ - !=

# numerical operators
πŸ’₯ - *
✨ - +
πŸ’« - -
πŸ—―οΈ - /
πŸ’­ - %

# delimiters
🌜 - (
πŸŒ› - )
πŸ›« - {
πŸ›¬ - }

# literals
😁 - true
😒 - false
0️⃣ - 0
1️⃣ - 1
2️⃣ - 2
3️⃣ - 3
4️⃣ - 4
5️⃣ - 5
6️⃣ - 6
7️⃣ - 7
8️⃣ - 8
9️⃣ - 9

# variables and assignment
πŸ“Œ - assignment
🦁,🐹,πŸ›΅,πŸ“Ί,πŸ₯¨, etc. - variable names

# utilities
πŸ“’ - print
🀫 - comment
πŸ’€ - sleep

Features

Print a numeric literal

πŸ“’πŸŒœ1οΈβƒ£πŸŒ›

> 1

Sleep for seconds

πŸ’€πŸŒœ1οΈβƒ£πŸŒ›

Variable assignment

πŸ¦πŸ“Œ3️⃣
πŸ“’πŸŒœπŸ¦πŸŒ›

> 3

Commenting

🀫 the next line assigns 3️⃣ to 🦁, this line won't execute
πŸ¦πŸ“Œ3️⃣

If, and nested if, statements

πŸ€”πŸŒœ1οΈβƒ£πŸŒ•1οΈβƒ£πŸŒ› πŸ›« 

    🀫 this should be executed
    πŸ“’πŸŒœ2οΈβƒ£πŸŒ›

    πŸ€”πŸŒœ1οΈβƒ£πŸŒ•9οΈβƒ£πŸŒ› πŸ›« 

        🀫 this should not be executed
        πŸ“’πŸŒœ3οΈβƒ£πŸŒ›
    πŸ›¬

πŸ›¬

> 2

Numeric operators

πŸ“’πŸŒœ8️⃣πŸ’₯2οΈβƒ£πŸŒ›
πŸ“’πŸŒœ8οΈβƒ£βœ¨2οΈβƒ£πŸŒ›
πŸ“’πŸŒœ8οΈβƒ£πŸ’«2οΈβƒ£πŸŒ›
πŸ“’πŸŒœ8οΈβƒ£πŸ—―οΈ2οΈβƒ£πŸŒ›
πŸ“’πŸŒœ8οΈβƒ£πŸ’­2οΈβƒ£πŸŒ›

>  16
>  10
>  6
>  4.0
>  0
πŸ“’πŸŒœ4️⃣πŸ’₯🌜3οΈβƒ£βœ¨5οΈβƒ£πŸŒ›πŸŒ›

> 32

Boolean literals

πŸ€”πŸŒœπŸ˜πŸŒ› πŸ›« 
    🀫 this should be executed because 😁 is true
    πŸ“’πŸŒœ1οΈβƒ£πŸŒ›
πŸ›¬

> 1
πŸ€”πŸŒœπŸ˜’πŸŒ› πŸ›« 
    🀫 this should not be executed because 😒 is not true
    πŸ“’πŸŒœ1οΈβƒ£πŸŒ›
πŸ›¬

Boolean comparisons

πŸ€”πŸŒœ1οΈβƒ£πŸŒ•1οΈβƒ£πŸŒ› πŸ›« 
    🀫 this should be executed because 1 is equal to 1
    πŸ“’πŸŒœ1οΈβƒ£πŸŒ›
πŸ›¬

> 1
πŸ€”πŸŒœ1οΈβƒ£πŸŒ‘1οΈβƒ£πŸŒ› πŸ›« 
    🀫 this should not be executed because 1 is equal to 1
    πŸ“’πŸŒœ1οΈβƒ£πŸŒ›
πŸ›¬
πŸ€”πŸŒœ1οΈβƒ£πŸŒ’0οΈβƒ£πŸŒ› πŸ›« 
    🀫 this should be executed because 1 is greater than 0
    πŸ“’πŸŒœ1οΈβƒ£πŸŒ›
πŸ›¬

> 1

While loop

πŸ”₯πŸŒœπŸ˜πŸŒ› πŸ›«
    🀫 this should always be executed
    πŸ“’πŸŒœ1οΈβƒ£πŸŒ›
    πŸ’€πŸŒœ3οΈβƒ£πŸŒ›
πŸ›¬

> 1
> 1
...

Features

  • mathematical operators
  • while loop
  • sleep
  • if statement
  • comments
  • boolean operators
  • boolean literals
  • variables and assignment
  • print

Dependencies

pip3 install ply

To run

alias emoji='python3 main.py'
emoji

License

MIT licensed

About

πŸ™ƒ A toy language comprised of emojis

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages