We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.

MeawLang

From Esolang
Jump to navigation Jump to search

MeawLang is a minimalist, scalable, byte-oriented esoteric programming language created by the independent developer S.A.Roman in 9 September 2026.

Heavily inspired by classic esolangs like MiniStringFuck and Chicken, it introduces a "feline-inspired" syntax where arguments are handled via a unary numeral system concept. The language operates on a single byte of memory (ranging from 0 to 255 with cyclic overflow) and features a "one word — one atomic operation" approach to avoid the monotonous instruction duplication typical of its predecessors.

MeawLang is bounded in memory, making it a finite-state automaton rather than Turing-complete.

Concept

MeawLang was designed to combine the minimalist memory model of MiniStringFuck with the word-based tokenization philosophy of Chicken.

Unlike traditional esoteric languages where modifying a memory cell requires repeating the same single-character instruction dozens of times, MeawLang introduces a "One word — one atomic operation" paradigm. This eliminates visual clutter and optimizes the source code structure into readable, distinct tokens.

The source code is parsed exclusively as a sequence of string commands separated by whitespaces or newlines. Each command follows a strict encapsulation format: M[Com][N]w

Where:

  • M acts as the start-of-instruction marker.
  • Com is a single-letter command identifier (i, y, or e).
  • N is a unary argument represented by a sequence of the letter "a" repeated n times.
  • w acts as the end-of-instruction marker.

For example, instead of writing 12 individual increment symbols, MeawLang scales the internal unary argument within a single "feline word": Miaaaaaaaaaaaaw (+12).

Instructions

MeawLang operates on a single byte of memory with a valid range of 0 to 255. Reaching 256 automatically wraps around to 0, and dropping below 0 wraps around to 255.

The instruction set consists of exactly 3 core operations, determined by the character following the initial M marker. The number of a characters inside the word defines the argument n. Any non-whitespace characters outside the valid M...w structure are ignored as comments.

Command Mnemonic Description Example Effect
i Increment Adds n to the current byte value. Miaaaaaw Adds 5 to the byte.
y Decrement Subtracts n from the current byte value. Myaaw Subtracts 2 from the byte.
e Echo Outputs the current byte as an ASCII character n times consecutively. Meaaaw Outputs the current character 3 times.

Basic Anatomy of a Word

  • Miaw — Increments the byte by 1 (n=1).
  • Myaw — Decrements the byte by 1 (n=1).
  • Meaw — Echoes the current ASCII character exactly once (n=1).

Examples

Hello, World!

The following program prints the classic "Hello, world!" string. It utilizes exactly 52 atomic instructions. Full code and instructions can be found in the referenced document.

Miaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw Meaw Miaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw Meaw Miaaaaaaaw Meaaw Miaaaw Meaw Myaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw Meaw Myaaaaaaaaaaaaw Meaw Miaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw Meaw Myaaaaaaaaw Meaw Miaaaw Meaw Myaaaaaaw Meaw Myaaaaaaaaw Meaw Myaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw Meaw

Execution Breakdown

Here is how the first few words construct the beginning of the string:

  • Miaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw — Increments the byte value by 72 (n=72). The cell value becomes 72 (ASCII for 'H').
  • Meaw — Outputs the current value once ('H').
  • Miaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw — Adds 29 to the cell (n=29). The cell value reaches 101 (ASCII for 'e').
  • Meaw — Outputs the current value once ('e').
  • Miaaaaaaaw — Adds 7 to the cell (n=7). The cell value reaches 108 (ASCII for 'l').
  • Meaaw — Outputs the current value twice consecutively ('ll').

Implementations

The official open-source ecosystem for MeawLang is developed and maintained by the creator. It includes both an interpreter and a text-to-MeawLang compiler.

See Also