Emo*
Emo* is a slight variation of the esoteric programming language Emo. It is similar to the more commonly known Brainfuck, except slightly extended, and designed so that the code looks like smileys. My changes are mainly to remove context-sensitive operands by adding a working register.
Spesification
- Command
- Description
- ^
- Increase working register (+1)
- -
- Decrease working register (-1)
- o
- Double working register (shift left)
- c
- Halve working register (shift right)
- ;
- Read from memory to working register
- ]
- Write to memory from working register
- :
- Read from storage register to working register
- )
- Write to storage register from working register
- 8
- Read memory position to working register
- }
- Write memory position from working register
- =
- Read from console to working register
- @
- Print to console from working register
- <
- Jump past matching > if memory != 0 (start of loop)
- >
- Jump to matching < (end of loop)
- ~
- Comment
Interpreter
I have built a basic interpreter in Java. It supports all commands except for reading console input. It also prints the code in a condensed form (by removing comments and excess whitespace) that you can use to impress your friends.
Execute a program with java -jar emo.jar <program>
.