A brainfuck derivative based off the vocabulary of Victini.
Project description
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file TiniLang-1.0.tar.gz
.
File metadata
- Download URL: TiniLang-1.0.tar.gz
- Upload date:
- Size: 22.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 20f519b236e259bdab1a6cfb246c9a46bd2be8146bca3da2160cbc633ac2c249 |
|
MD5 | 9dea4593531529be9655cee9fe922dc3 |
|
BLAKE2b-256 | 4105f0b2e059028ef76b0fc89812b54291920220f0cb4da20332f5ed66e9c8c9 |
File details
Details for the file TiniLang-1.0-py3-none-any.whl
.
File metadata
- Download URL: TiniLang-1.0-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1536dc4f6f9bf9ea2f211f9c6be25060d340d16933af88a663a2839dd4fac952 |
|
MD5 | 0bb9dca007426d6ea8e41821fd304106 |
|
BLAKE2b-256 | 459e48acdcac2893de15a6b9ecfde0c6224b742f25b8159f0bb7360d1da2a0d6 |