Skip to content

A brainfuck derivative based off the vocabulary of Pikachu from Pokémon.

License

Notifications You must be signed in to change notification settings

AnnoyingRain5/TiniLang

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TiniLang - The Victini Programming Language




A fork of PikaLang, which is a brainfuck derivative based off the vocabulary of Victini from Pokemon.

Syntax

TiniLang brainfuck description
vi + increment the byte at pointer
ni - decrement the byte at pointer
vicvic [ if pointer is zero, jump to matching tinitini
tinitini ] if pointer is nonzero, jump to matching vicvic
victi > increment the data pointer
vicni < decrement the data pointer
vic , input of one byte into pointer
tini . output the byte at pointer

Installation

stable:

pip install TiniLang

or bleeding edge...

git clone https://github.com/AnnoyingRain5/TiniLang.git
cd TiniLang

python setup.py install

Usage

TiniLang path/to/file.tini

File Extention

A TiniLang program must be stored in a file with a .tini extention

API Usage

import TiniLang

sourcecode = """
    tinitini vi vi vi vi vi vi vi vi vic vicvic vi vi vi vi vi vi vi vi vi tinitini ni tini vicvic victi tinitini vi vi vi vi vic vicvic vi vi vi vi vi vi vi tinitini ni tini vicvic vi victi vi vi vi vi vi vi vi victi victi vi vi vi victi tinitini tinitini vi vi vi vi vi vi vic vicvic vi vi vi vi vi vi vi tinitini ni tini vicvic vi 
    vi victi ni ni ni ni ni ni ni ni ni ni ni ni victi tinitini vi vi vi vi vi vi vic vicvic vi vi vi vi vi vi vi vi vi tinitini ni tini vicvic vi victi vicvic victi vi vi vi victi ni ni ni ni ni ni victi ni ni ni ni ni ni ni ni victi tinitini tinitini tinitini vi vi vi vi vic vicvic vi vi vi vi vi vi vi vi tinitini ni 
    tini vicvic vi victi  
    """

# or use sourcecode = TiniLang.load_source("FILENAME.tini") to load from file

TiniLang.evaluate(sourcecode)

Development

When developing, use pipenv to install needed tools.

pipenv install

pipenv run black .

pipenv run python -m TiniLang tests/hello-world.tini

Thanks

Special thanks to Groteworld for creating pikalang, which was only slightly modified to create TiniLang

Disclaimer

This is a fan-based parody of themes from Pokemon. The language, as well as its author, is in no way associated with the Pokémon francise and its creators, nor is this project, in any way, for-profit.

About

A brainfuck derivative based off the vocabulary of Pikachu from Pokémon.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%