Inspiration

Initially, our project was a joke; I intended it to be a bare-bones, almost completely unreadable language. But after a while, my team and I enjoyed the challenge of making a Turing-complete language with such unique specifications. Breaking down a program into only a set of 18 different emojis turned out to be really fun; like solving a puzzle. We made a demo game (about being stranded on a desert tropical island) to demonstrate a Coconut's idea.

What it does

The interpreter (coconut.py) accepts a file and reads each line of the file, "interpreting" it and performing the instructions contained in the file according to Coconut's specifications. We've designed these specifications to create a minimalistic but usable programming language. Programming in Coconut is not easy, but it's definitely rewarding.

How we built it

We used Python to create a program that reads each line, and splits it into a list of emojis. For example, if the first emoji is 🍇, the symbol for addition, it adds the next two values in the line and stores them. We've created all the basic functionality a programmer needs, and we found decomposing a complex application into a set of emojis pretty entertaining.

Challenges we ran into

Building the interpreter was surprisingly hassle-free. The hard part? Making the demo program.

What's next for coconut

My team intends to update the demo program (island.cn) to fully complete the story and showcase the surprising functionality of Coconut.

Built With

Share this project:

Updates