Skip to content

jleaders/emojicode-lang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

19 Commits
Β 
Β 

Repository files navigation

emojicode-lang

"The file format choice of Millenials"

  • Less bytes than a json or yaml file
  • More fun
  • Great for texting your friends

Example for Storage / Transmission

Example JSON

    {  
        "employees": [{  
            "name":       "Jonny",   
            "salary":      56000,   
            "married":    true  
        },
        {  
            "name":       "Wilma",   
            "salary":      57000,   
            "married":    false  
        }]
    }  

Example YML

employees:
    - name: Jonny
      salary: 56000
      married: true
    - name: Wilma
      salary: 57000   
      married: false 

Example EmojiCode

πŸ‘±οΈ
   πŸ†ŽοΈ Jonny
   πŸ’²οΈ 56000
   πŸ’‘οΈ βœ”οΈ
   
   πŸ†ŽοΈ Wilma
   πŸ’²οΈ 5700
   πŸ’‘οΈ βœ–οΈ

(Reminder: On windows, you can type emoji's with Win+Period, and Ubuntu via right-click in Gedit)

Calling for help writing parsers in all languages

Why Emojis?

EmojiCode is Code Explained Like I'm 5

The goal of emoji Code is such that the user would be able to determine what the code did and was for without having any prior technical or coding knowledge. Therefore the user could theoretically change the code to fit their needs.

EmojiCode sits in the space between the WYSIWYG editors of old, and modern markup languages. With the advent of emoji, hieroglyphic-like pictographs can commute complex knowledge in the space of a character, this solves two problems coming to languages:

  • The Standards Problem: What is an image? Is it a jpg, a png, a gif? Emoji code solves this by being so high level, it doesn't care. It assumes the user doesnt care either, so in a sense it is a DSL (domain specific language) for the user. So this is an image πŸ“Š and this is a video: πŸ“Ί and this is a document: πŸ“„ and the VM will figure it out
  • The Keyword problem: should I type foreach, for, for x in y, or what? Every languages uses multiple particles or spellings. Emoji code doesn't. Each emoji is the one and only standard. You cannot mispell an emoji! Also emojis are international**.

Example Applied Usage

Example Web Form (Actual Code):

πŸ”€ User Name
πŸ”’ Enter Password here
πŸ“Š Click to upload Profile Picture
πŸ”  User Bio

The output is 4 field form with a the following:

  • Single line text field
  • Password field
  • Browse dialog for picture uploading
  • Multiline Description field

Proposed Ecosystem

Obviously above is a DSL (domain specific language) use-case of an emojicode schema, but in the long run, we could have interpretors for a variety of use cases. To generalize this for various domains, a proposed pipeline for emoji schema DSL's would be:

Emoji code-> Transpiler Marketplace -> Transpiler of Choice -> Output Language (Python/PHP/ObjC/C#/NodeJS/JS/Java/Haxe/Lua) + API of Choice (ReactJS,Customintelligence,Laravel,Kivy,Qt) + Storage Engine of Choice (filesystem/Amazon cloud/mysql/ssh/mongoDB/JSON/Yaml) emojicode2php+mysql+customintelligence -c will compile *.emoji files to PHP for example, with a mysql storage sengine, and the CustomIntelligence API.

Just pick your:

  • Language
  • Storage Engine
  • API

One existing framework already internally uses EmojiCode, and it works to create web forms! The Verb FullEnd framework

But in the long run, we'd could create a transpiler marketplace that people could offer their own Domain Specific transpilers for.

About

Program with Emojis!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published