A quine for the MBLF programming language
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Raymon Zutekouw a5a65c4ed3
Clarify project
2 years ago
patches Add AddArged compiler patch 2 years ago
LICENSE Add LICENSE 2 years ago
README.md Clarify project 2 years ago
build.sh Add build script to acquire quine 3 years ago
wordFactList.mblf Add obfuscated MBLF 3 years ago


So instead of making yet another quine, it would be cool to generate an already existing quine from something that doesn't look like it at all. So what if it is encoded in seemingly random words, like the programming language Shakespeare or Chef.

So let us take this quine: https://www.linusakesson.net/programming/brainfuck/index.php


So the original development for the higher-level-quine went like this:

  • create a file that secretly compiles (almost completely) into the Brainfuck quine.
    • in a language younger than two weeks to ensure nobody made this earlier.
      • and propose features that improve both the language and help you with this ridiculous idea
        • like variable-names of any size and composed of any* characters which is kinda cool for any programming language to have
          • then realize no editor has syntax highlighting for this language
            • make that first yourself for a IDE you have not touched for years, yay first atom package published to apm!!!
              • realize the rabbit hole has been entered...

So that is what this project is: a source-file containing what seems some oddly but still acceptable formatted text that compiles to the quine.

How to run

Run build.sh with the mblf compiler installed. The mblf compiler needs to be installed from source, as it needs the AllArged patch.

Installing mblf from source with AllArged patch

git clone https://github.com/MBLF-Project/quine-stuff.git
git clone https://github.com/MBLF-Project/mblf.git

cp quine-stuff/patches/AllArged.diff mblf/
cd mblf

git checkout tags/v0.1.0
git apply AllArged.diff
rm AllArged.diff

cargo install --path .

Generate quine

cd ../quine-stuff

If all steps went correctly, you should have the file quine.bf, which was generated from the wordFactList.mblf