README.md
April 21, 2022 ยท View on GitHub

MewMew is dead. Checkout Mewl, program in cats' language
Give a Star ๐ to this project to support this project
/แ ๏ฝก๊๏ฝกแ\ MewMew ๐ฑ is an Esoteric Just for Fun programming language. You can program in cats' language with MewMew. Have Fun!
๐ Get Started
๐ธ Integers
There's no concept of numbers (eg. 1 2 3 4 100) in MewMew, instead we use mews. 1 mew is equal to 1 , therefor mewmew = 2 , mewmewmew = 3 , mewmewmewmewmewmewmewmewmewmew = 10 and mew-mew = 0. (You got the Idea, right)
๐ธ Operators
MewMew supports a few types of operators =>
+-> Addition
--> Subtraction*-> Multiplication/-> Division**-> Power~-> Absolute Value--> Unary Minus>-> Greater than>=-> Greater than equal to<-> Less than<=-> Less than equal to==-> Is Equal to!=-> Not Equal to&-> And|-> Or%-> Modulus (Remainder)
๐ธ Identifiers
MewMew identifiers must start with an m and can contain zero or more consecutive _ and w. e cannot be used , because the interpreter can confuse it with a mew number.
๐ธ Assignment
ID = Expression
IDs will follow the rules of identifiers (above mentioned)
๐ธ Print aka. Meow Say
There's no keyword , to print we use the :: symbol, for example
::mewmew + mewmew outputs 4
๐ธ Print Char
Same as print , there's no keyword. It prints the ASCII char from the mew number given
::$ ####(mew) * mewmewmewmewmewmewmew + mewmew , Output = H
๐ธ If
CONDITION ? TRUTH_BODY ;
If statement of mewmew is very similar to ternary expression of C/C++.
๐ธ If Else
CONDITION ? TRUTH_BODY : ELSE_BODY ;
๐ธ Repeat Loop aka. Meow Loop
@TIMES : BODY ;
Where TIMES can be any mew number , and the BODY will be executed TIMES times.
๐ธ Scratch Functions
#MEWNUMBER (The '#' can be 1 to 5 consecutive times )
- 1
#calculates square root of the expression - 2
#returns 2 times the given expression - 3
#returns 5 times the given expression - 4
#returns 10 times the given expression - 5
#returns 100 times the given expression
๐ธ Scan (Read Mew or Traditional Number from Stdin)
ID << ;
Where ID is an variable identifier. The user will be prompted for a formal or mewmew number.
๐ธ Comments
//
To write a comment , start the sentence with //
๐ Example Programs:
(Two Examples are provided in the repo)
//Addition
m = mewmew + mewmewmew;
::m;
OUTPUT: 5
// Print All Numbers Divisible by 2 under 100
m = mew;
@#####(mew):
m % mewmew == mew - mew ? ::m;;
m = m+mew;
;
[TODO] โก Build the whole thing again โก Ditch C++, use plain C
๐ NOTEs:
- MewMew is an esoteric language , it was never intended to be used for mainstream programming.
- MewMew is only tested on Linux device (Ubuntu 18.04 x86_64). Building on Windows or MacOS should not be difficult , Please let me know , if you build it on either Windows or MacOs.
๐จ Building Yourself
๐ฉ Required
- ANTLR4 JAR
- ANTLR4 (C++) RUNTIME
- GCC/G++
- CMake
๐ง How to Build
- Download & Setup ANTLR4 JAR (JAVA Runtime is Required to run ANTLR4)
- Download ANTLR4 C++ Runtime , compile and setup
- Fork , Clone this Repository
mkdir build && cd buildcmake ..- If Things are good. You'll have a executable binary file called mewmew