Skip to main content

Makes Brainfucking Easier!

Project description

<p><span><span style=”font-family:Verdana, Arial, Helvetica, sans-serif;line-height:19px;text-indent:26px;”><span style=”font-size:14px;”><span style=”font-family:Arial;line-height:26px;”><br></span></span></span></span></p>

# BFFuck

Makes brainfucking easier

This is a work in progress

The tools is an esoteric language that compiles to brainfuck, using algorithms in [brainfuck algorithms](https://esolangs.org/wiki/Brainfuck_algorithms).

### Usage: Run this in Python: `python from bffuck import BFFuck bff=BFFuck() bf=bff.compile('Your code') `

Note that if a BFFuck object is created and used, its status will change and therefore cannot compile another program. ### Syntax BFFuck currently supports the following syntax:

Comment: ` # Comment ` Variable definition: `text <variable 1>=<variable 2> or <variable>=<number> `

Addition: `text add(x,<number>) or add(x,<variable>) `

Subtraction: ` sub(x,<number>) or sub(x,<variable>) `

Multiplication: ` mul(x,<number>) or mul(x,<variable>) `

While loop: `text while(<variable or number>) CODE endwhile `

I/O: `text <variable>=in # Reads <variable> as decimal integer <variable>=inc # Reads <variable> as ASCII character out(<variable or number>) # Outputs <variable> as decimal integer outc(<variable or number>) # Outputs <variable> as ASCII character `

String output shortcut: `text print(STRING) # Without quotes # For instance print(Hello World!) `

One-branch if statement: `text if(<variable or number>) CODE endif `

### Platform BFFuck is in pure Python and therefore it supports any platform.

### Constraints Programs compiled from BFFuck needs you to have 8 bit cells that wrap.

### Disadvantages BFFuck currently has these disadvantages: 1. It’s numbers are 8 bit numbers. 2. It has some bugs.

The repository contains some examples, including a Hello World program, a cat program and an A+B program.

Project details


Download files

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

Source Distribution

BFFuck-1.1.0.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

BFFuck-1.1.0-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file BFFuck-1.1.0.tar.gz.

File metadata

  • Download URL: BFFuck-1.1.0.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.0

File hashes

Hashes for BFFuck-1.1.0.tar.gz
Algorithm Hash digest
SHA256 633533ff0724feedc23e8770dc0f50af1771cfc72f4dd819cd5f3d50af92fe5a
MD5 02505c292543070263ca2e4e59dda665
BLAKE2b-256 2d3a8c983d392304f7c81e5ae579622866ece168b3c066acad7b69e9c5a4a066

See more details on using hashes here.

File details

Details for the file BFFuck-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: BFFuck-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.0

File hashes

Hashes for BFFuck-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3fd8eed2bb80457171123f0e07a99d739465d3fad94e9e6e785d7fecaa5d5919
MD5 62715be35a8c8e138b164decde5fa858
BLAKE2b-256 92d41c5a1428acf98c15f3ddc31b0840730900089ccc6f9ce9b2efcbdf19c47f

See more details on using hashes here.

Supported by

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