A feline-friendly esoteric programming language
Project description
.meow — The Feline-Friendly Esoteric Programming Language
Because programming should be fun, cats are chaotic, and you deserve to write code that goes meow!
What is MeowLang?
MeowLang (.meow) is a whimsical esoteric programming language where every line of code sounds like a cat. Inspired by the chaos of esolangs and the elegance of felines, .meow lets you vibe code using cat noises.
Quick Start
Installation
# Clone the repository
git clone https://github.com/jaytirthjoshi/meow.git
cd meow
# Run a .meow program
python meow_interpreter.py examples/hello_world.meow
Your First .meow Program
Create a file called hello.meow:
# Hello World in .meow
meow
meow
meow
purr
hiss
purr
scratch
purr
Run it:
python meow_interpreter.py hello.meow
Output:
3
2
0
Commands Reference
| Command | Action | Example |
|---|---|---|
meow |
Increment memory value by 1 | meow → memory += 1 |
hiss |
Decrement memory value by 1 | hiss → memory -= 1 |
purr |
Print the current memory value | purr → prints memory |
nap |
Do nothing (no-op) | nap → does nothing |
scratch |
Reset memory value to 0 | scratch → memory = 0 |
lick |
Double the current memory value | lick → memory *= 2 |
zoomies |
Square the memory value | zoomies → memory = memory² |
yowl |
Begin a loop (while memory != 0) | yowl → loop start |
paw |
End a loop | paw → loop end |
sleep |
Sleep for memory value milliseconds | sleep → pause execution |
🐾 |
Comment/decoration (ignored) | 🐾 comment 🐾 |
mew |
Take user input and set memory to that value | mew → memory = user input |
pounce <line_number> |
Jump to the specified line number (1-based) | pounce 5 |
File Extension
All MeowLang programs are saved as .meow files:
hello_world.meowfibonacci.meowcountdown.meow
Examples
Countdown Program
# Countdown from 5 to 1
meow
meow
meow
meow
meow
yowl
purr
hiss
paw
Output:
5
4
3
2
1
Mathematical Operations
# Powers and multiplication demo
meow
meow
purr
lick
purr
lick
purr
lick
purr
zoomies
purr
Output:
2
4
8
16
256
Fibonacci Sequence
# First 8 Fibonacci numbers
meow
purr
purr
meow
meow
purr
meow
meow
meow
purr
# ... (see examples/fibonacci.meow for full program)
Output:
1
1
2
3
5
8
13
21
Usage
Command Line Interface
# Run a .meow file
python meow_interpreter.py program.meow
# Execute code directly
python meow_interpreter.py -e "meow meow meow purr"
# Get help
python meow_interpreter.py
Python API
from meow_interpreter import MeowInterpreter
interpreter = MeowInterpreter()
# Run from string
code = """
meow
meow
meow
purr
"""
result = interpreter.run(code)
print(result) # Output: 3
# Run from file
result = interpreter.run_file("program.meow")
Language Features
Memory Model
- Single integer memory cell
- Starts at 0
- Can be positive or negative
- Supports basic arithmetic operations
Control Flow
- Simple while loops with
yowlandpaw - Loops continue while memory != 0
- Nested loops supported
Input/Output
purroutputs current memory value- Output is always numeric
- Values are printed on separate lines
Comments and Decorations
- Lines starting with
🐾are comments - Emoji comments (
🐾 comment 🐾) are ignored - Empty lines are skipped
Notes & Limitations
- Case-sensitive: All commands must be lowercase
- Whitespace: Commands are separated by newlines
- Unknown commands: Ignored with a warning
- Memory limits: Standard Python integer limits apply
- No input: Currently read-only (memory manipulation only)
Why .meow?
Because:
- Programming is fun — Why not make it adorable?
- Cats are chaotic — Perfect for esoteric languages
- You deserve joy — Write code that makes you smile
- Learning is better with cats — Meow while you code!
Contributing
Want to add more cat commands? Here are some ideas:
stretch— Absolute valuepounce— Jump to line numbergroom— Sort memory (if we add arrays)chase— Random number generationsleep— Sleep/delay command
License
MIT License - feel free to use this for fun projects, educational purposes, or just because cats are awesome!
Acknowledgments
- Inspired by esoteric languages like Brainfuck, Befunge, and LOLCODE
- Made with love for the programming community
- Special thanks to all the cats who inspired this language
Made by cat lovers, for cat lovers
"In a world full of serious programming languages, be the one that goes meow!"
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file meowlang-0.0.3.tar.gz.
File metadata
- Download URL: meowlang-0.0.3.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c48da294315039618ad5324c2ce3dea0d4e120c1f0f8bc4fb5d5e775b907868f
|
|
| MD5 |
4dfc3ca898a946fd59f01d2427ef6faa
|
|
| BLAKE2b-256 |
b5bea6d95d887a7d60463d071213d99497bfaa05d4f9c8a5e94b33676f5148c0
|
File details
Details for the file meowlang-0.0.3-py3-none-any.whl.
File metadata
- Download URL: meowlang-0.0.3-py3-none-any.whl
- Upload date:
- Size: 4.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
21ecb2b849e876cc22734e300a6502d050b57f604ac30058473cd7da2ce29b62
|
|
| MD5 |
1279943f2f1b4fadc41b2f0c1025d03d
|
|
| BLAKE2b-256 |
510e6d3fe31d262f588aa8e2cd058871514ce5a3b7b128818673737b556f78bc
|