Skip to main content

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

This version

1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

TiniLang-1.0.tar.gz (22.0 kB view details)

Uploaded Source

Built Distribution

TiniLang-1.0-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

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

Hashes for TiniLang-1.0.tar.gz
Algorithm Hash digest
SHA256 20f519b236e259bdab1a6cfb246c9a46bd2be8146bca3da2160cbc633ac2c249
MD5 9dea4593531529be9655cee9fe922dc3
BLAKE2b-256 4105f0b2e059028ef76b0fc89812b54291920220f0cb4da20332f5ed66e9c8c9

See more details on using hashes here.

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

Hashes for TiniLang-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1536dc4f6f9bf9ea2f211f9c6be25060d340d16933af88a663a2839dd4fac952
MD5 0bb9dca007426d6ea8e41821fd304106
BLAKE2b-256 459e48acdcac2893de15a6b9ecfde0c6224b742f25b8159f0bb7360d1da2a0d6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page