/MemeAssembly

A Meme-based programming language

Primary LanguageCGNU General Public License v3.0GPL-3.0

or MemeASM for short, is a highly advanced x86-Assembly based programming language using only memes as commands.

Build Test Compilation Test Compile and Run Test Volkswagen Build Status

What is MemeAssembly?

In short, MemeAssembly is the revolution the tech industry has been waiting for. Combining the emerging trend of minimalism with rememberable memes, Big Data, AI and co. won't be the same without it!

What are the perks of using MemeASM?

  • Execution Time: Not Stonks
    The MemeASM-compiler converts your code into x86_64-Assembly to make it run blazingly fast!
  • Fun-Factor: Stonks
    Consider this: Your code might be simple to understand, but is it fun to understand? With MemeAssembly, your code will be much more fun to look at!
  • Complexity: Not Stonks
    Can you even remember all the commands that your 'shiny new' programming language has to offer? Are you overwhelmed and confused by all the ways a modern programming language can be used for? Well look no further than MemeAssembly! MemeASM is your best choice, since it only supports a tiny fraction of instructions.

So it is basically Assembly?

I'd just like to interject for a moment. What you're refering to as Assembly, is in fact, MemeAssembly, or as I've recently taken to calling it, Meme plus Assembly. Assembly is not a Meme operating system unto itself, but rather another free component of a fully functioning Meme system made useful by the Meme corelibs, Twitter bots and vital system components comprising a full Meme OS as defined by Reddit.

Many computer users run a modified version of the Meme system every day, without realizing it. Through a peculiar turn of events, the version of Meme which is widely used today is often called Assembly, and many of its users are not aware that it is basically the Meme system, developed by the Meme Project.

There really is a Assembly, and these people are using it, but it is just a part of the system they use. Assembly is the basis: the element of the system that allocates the people's resources to the other Memes that you publish. This basis is an essential part of a Meme operating system, but useless by itself; it can only function in the context of a complete Meme operating system. Assembly is normally used in combination with the Meme operating system: the whole system is basically Meme with Assembly added, or MemeAssembly. All the so-called Assembly distributions are really distributions of MemeAssembly!

Who is it for?

MemeAssembly is the best choice for...

...Silicon Valley Developers 📱

When it comes to programs, speed is everything. No user wants to wait minutes for their app to start or to calculate a result. Thanks to MemeAssembly, these worries are no more! Due to MemeAssembly's high level of optimisation, your code will be blazingly fast!

...Game Developers 🎮

According to NVIDIA, "Frames win games".
While high-level programming languages like Java provide a lot of pre-coded Interfaces and classes, they do have one giant drawback: Speed.
Even if the game is great, low performance can be a deal-breaker for most if not all customers! So don't miss out on your potential revenue and give your gamers the highest tier performance - using MemeAssembly!

...children learning to code 👦 👧

Motivating children to join Computer Science related studies or simply learning to code has been a challenge for years. The solution for this problem is simple yet effective: Learn to code using MemeAssembly.
Numerous studies have alredy proven the effectivity of MemeAssembly. Parents often praise MemeAssembly's apprach of combining low-level programming languages with Memes that are easy to remember.

Convinced? Visit the "Getting Started"-page to find out more about how to start coding with MemeAssembly!

Code examples

Before continuing, please keep in mind that these examples only represent a tiny fraction of what can be done with MemeAssembly. Are you ready to experience the infinite possibilities of MemeAssembly? Here we go:

  1. Express your feelings during a math exam:
I like to have fun, fun, fun, fun, fun, fun, fun, fun, fun, fun main
    upgrade
    what can I say except A
    fuck go back

    I see this as an absolute win
  1. Add 25 to 64:
I like to have fun, fun, fun, fun, fun, fun, fun, fun, fun, fun main
    rbx is brilliant, but I like 64
    sneak 100 rax

    upgrade
    upvote rbx
    upvote rax
    corporate needs you to find the difference between rax and 25
    fuck go back

    they're the same picture
    I see this as an absolute win
  1. Print the alphabet with spaces in between and a new line at the end:
I like to have fun, fun, fun, fun, fun, fun, fun, fun, fun, fun main
    eax is brilliant, but I like 65

    upgrade
    what can I say except al
    what can I say except \s
    upvote eax
    corporate needs you to find the difference between eax and 91
    fuck go back

    they're the same picture
    what can I say except \n

    I see this as an absolute win

You can also check the examples directory to find more.

Badge of honor

Whoever dares to write their code in MemeASM shall be rewarded. Not only with a joyful coding experience, but also by being able to place this badge of honor in their GitHub ReadMe:
Made with MemeAssembly Badge
To do so, insert this code block into your ReadMe file:
![Made with MemeAssembly Badge](https://img.shields.io/badge/made%20with-MemeAssembly-blue)

Contributing

Contributions to this repository are welcome! Especially ideas for new (and hopefully idiotic) commands. To add a new command, either create an issue with the tag "new-command" or add it yourself and create a pull-request.

Current Contributors:

GitHub Contributors Image

Copyright and License

Copyright ©️ 2021-2023 Tobias Kamm and contributors
The MemeAssembly project is licensed under the GPLv3 license. For more information, consult the LICENSE file of the MemeAssembly GitHub-Repo or visit https://www.gnu.org/licenses/gpl-3.0.txt.