moji
Developing a full emoji language.
Note: This was developed before the big bang of LLMs. Now we can just do this. (if only Bing Xu had this when he made his book without words!!))
Disclaimer: My personal belief regarding the "will emojis become a new language" question is that their current use, and probably most valuable future use, would be to enhance existing writing systems. Indeed, compared to face-to-face spoken language, you lose quite a bit in written language, such as body language, facial expression and tone of voice. Emojis can reintroduce this lost information.
Still, out of academic curiosity, let's see what a written language that uses emojis could look like.
Our research is not about just replacing some text by emoji equivalent: We want the written system to only use unicode emojis.
Our research is not about converting text to an emoji-only written system. That's easy. You can do it with two emoji characters -- that's called binary. You can do it with a mapping between letters and emojis -- that's lame.
Instead what we want to do here is explore how one can map written english (for example) to emojis, but through their semantic content, with an eye on patterns that might lead to a grammar for the "language" -- whether this grammar emerges naturally, or is helped out a bit through the modeling setup.
To install: pip install moji
References
emoji2vec
Princeton and University College London researchers doing word2vec with emojis. See this article. We'll start with the data they provide, namely the english-emoji relations and possibly the emoji vectors too.
Emojicode
Can you believe these nerds. A programming language where language constructs (types, operators, etc.) are emojis. And they're serious! I mean, just check out at the reference documentation!
Will emoji become a new language?
This article from the BBC explores the question.
Emojin
In this video Matt Mignogna talks about the "what makes a language" and proceeds in proposing a prototype. His prototype is not of much use for use since it's only a small lexicon an overly simplistic grammar, depends on non-emoji (in the unicode sense) diacritics, and is (as he later points out) just a mapping of English (I mean... who needs a definite article!)
Still, the first 6mn are is a nice introduction to the effort and potential.
English to Emoji
Code
online apps
Metadata
Release files for moji 0.0.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| moji-0.0.9.tar.gz | 4.5 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| moji-0.0.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.9 MB
Release files / moji-0.0.9.tar.gz
| Download URL | moji-0.0.9.tar.gz |
|---|---|
| Size | 4.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ec2c331519216bbbd08972c685b1bbd40fead6aa330a34a35268e8901cfe4db7
|
|
BLAKE2b-256 checksum How to use checksums |
fada814b12dc2c18454f6fb0218b2059f2f018438b6d020a9d2c0ac11fa3ee48
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / moji-0.0.9-py3-none-any.whl
| Download URL | moji-0.0.9-py3-none-any.whl |
|---|---|
| Size | 4.5 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cd7c9be3cd6f90f2abb99d80e46254f7c3cfd76daac1b9f3d80e35b989daffb5
|
|
BLAKE2b-256 checksum How to use checksums |
e9213e377195111c1566f1a25fd6d5f9cfee67e56aabef27de776df388a80c00
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|