Egaki
Welcome to the home page of Egaki, a programming language with a syntax written completely in emoji.
Overview
Egaki is currently under development. When completed, the language will be interpreted to Python at runtime. The language remains in early-stage development. Check out the roadmap below to see what features are available.
Motivation
The impetus for this project is a desire to strengthen my understanding of Python, particularly its class nomenclature and built-in methods. While practicing code on my phone while commuting, I found it annoying to continuously be forced to switch between the standard keyboard, symbols selector, advanced symbols pane, and formatting tools, and wondered if emoji, if formatted correctly in a purpose-built mobile terminal emulator, could provide a mobile-first development experience. While this project will not be building said mobile terminal application, it will attempt to simulate the experience.
Follow Along!
While building this project, I'll be writing more in-depth about the experience, the project's design choices, and what this language might actually look like on mobile. A link to this writing will be provided here after the first post is published.
Roadmap
Note: This roadmap will evolve as the project grows
Must-Haves
- ⬜️ 👩💻 Simple shell-style command line
- ⬜ 🪙 Lexer
- ⬜ 🌳 Parser
- ⬜ 🔛 Interpreter
- ⬜ 🔢 Support for numbers
- ⬜ ➗ Support for numeric operations
- ⬜ 🟰 Support for numeric comparison
- ⬜ 🔡 Support for string types
- ⬜ ❌ Support for boolean types
- ⬜ 🆕 Support for primitive-type variable declaration and assignment
- ⬜ ❓ Support for if-else blocks
- ⬜ 🔂 Support for for-loops
- ⬜ 🔁 Support for while-loops
- ⬜ 🖨 Support for output to stdout
Desired
- ⬜ 👨🔬 Advanced datatypes (e.g., a translation of Python's dict)
- ⬜ 👩🏫 Class creation
- ⬜️ 📄 Egaki script parsing and execution
Metadata
Release files for Egaki 0.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| egaki-0.0.0.tar.gz | 3.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| egaki-0.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 6.8 kB
Release files / egaki-0.0.0.tar.gz
| Download URL | egaki-0.0.0.tar.gz |
|---|---|
| Size | 3.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
97152e117b9a843c4df8dfd236803aac114e51875fa064bbbcf67c49f6e45592
|
|
BLAKE2b-256 checksum How to use checksums |
d349a2b266e25caf3a0fc9dcabd350732ebdfba533015908e72115cf1aa5b4bb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.13
|
Release files / egaki-0.0.0-py3-none-any.whl
| Download URL | egaki-0.0.0-py3-none-any.whl |
|---|---|
| Size | 3.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b66b02fbb345e4b98c6fda911800cbbcf2006214bc5408509bca4a1cad4b16ad
|
|
BLAKE2b-256 checksum How to use checksums |
aa4a4df6de1caa9bcdc2ba20a34991858018939b0239d9dcaa2f6cf1ea916fb2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.13
|