A collection of compilers based around compiling a high level language to a Brainfuck dialect.

Related tags

Miscellaneous tf
Overview

tf

Example

A collection of compilers based around compiling a high level language to a Brainfuck dialect.

Built at, and for, the VolHacks V hackathon during October 2021.

Usage

To install, you must download Rust from here.

# Install directly from git with cargo
cargo install --git https://github.com/adam-mcdaniel/tf

# Or, alternatively, the repo and install from source
git clone https://github.com/adam-mcdaniel/tf
cd tf
cargo install -f --path .

After Install

# Just run the `tf` executable!
$ tf
tf 0.1.0
Adam McDaniel:Vicky Chakpuang:Logan Wrinkle
A collection of the The Fuck? compiler tools to compile What? and assemble Why? and How?

USAGE:
    tf [FLAGS] [OPTIONS] <FILE>

FLAGS:
        --help       Prints help information
    -h, --how        Assemble How brainfuck dialect
                     (a 32-bit superset of brainfuck)
    -V, --version    Prints version information
    -w, --what       Compile What source
    -y, --why        Assemble Why assembler

OPTIONS:
    -o <OUTPUT>        Optionally specify output file

ARGS:
    <FILE>    Input file

The code generated by the tf executable can then be compiled by the tiny when.c compiler in the assets folder.

gcc when.c -o when
tf examples/testing.what | ./when > output.c
gcc output.c -o output && ./output
You might also like...
Just a personal Rust Playground to play around and understand the language.
Just a personal Rust Playground to play around and understand the language.

Rust Proactive Introduction The code is a bit messy but it serves just as a personal Rust Playground to play around and understand the language. You c

Thin wrapper around starship.rs to format kakoune status line

kakship is just a thin wrapper around starship to format the status line of kakoune and is meant to be used with the included kakoune script kakship.kak.

FFI wrapper around cfitsio in Rust

rust-fitsio FFI wrapper around cfitsio in Rust Installation fitsio supports versions of cfitsio = 3.08. cfitsio must be compiled with reentrant suppo

cargo-check This is a wrapper around cargo rustc

cargo-check This is a wrapper around cargo rustc -- -Zno-trans. It can be helpful for running a faster compile if you only need correctness checks. In

A simple, yet feature-filled wrapper around the coqui-stt C API

A simple, yet feature-filled wrapper around the coqui-stt C API

A simple library with just one struct which is used to wrap around pointers

A simple library with just one struct which is used to wrap around pointers. This can be used to create pointers and share them across threads without the hassle of synchronization if you really do not care about that.

A safe wrapper around Gamercade's raw Api.

gamercade-rs A safe wrapper around Gamercade's Raw Api. As the Raw Api requires using a lot of unsafe and hiding of values through different types (fo

🌋 A very lightweight wrapper around the Vulkan Memory Allocator 🦀

🌋 vk-mem-alloc-rs A very lightweight wrapper around the Vulkan Memory Allocator 🦀 [dependencies] vk-mem-alloc = "0.1.1" Simple Vulkan Memory Allocat

A collection of exponentially-smoothed camera controllers for the Bevy Engine.

smooth-bevy-cameras A collection of exponentially-smoothed camera controllers for the Bevy Engine. Look Transform All controllers are based on a LookT

Owner
adam mcdaniel
open sourcerer🔓🏗️, musician🎸🎶, and student🎓
adam mcdaniel
An upper-level course for CS majors on formal languages theory and compilers.

CS4100 Introduction to Formal Languages and Compilers Spring 2022 An upper-level course for CS majors on formal languages theory and compilers. Topics

null 2 May 28, 2022
A high-level Rust crate around the Discord API, aimed to be easy and straight-forward to use.

rs-cord A high-level Rust crate around the Discord API, aimed to be easy and straight-forward to use. Documentation • Crates.io • Discord Navigation M

Jay3332 4 Sep 24, 2022
Programming Language Inspired by Brainfuck

Brainsuck Brainfuck but not really... like... a better version of it. Installation Requirements: Rust version 1.50 or higher Linux curl https://raw.gi

Derin Önder Eren 27 Nov 18, 2022
The brainfuck language interpreter written in Rust

The brainfuck language interpreter written in Rust

Jan Štaffa 1 Feb 21, 2022
Brainfuck interpreter written in rust

Brainfuck Interpreter Written in Rust Simple Interpreter that runs bare Brainfuck and extends it with debug command # which prints content of first te

Was 1 Nov 28, 2021
Boop is a variant of Brainfuck featuring cats.

Boop Boop is a variant of Brainfuck featuring cats. Try it $ cat ./examples/hello-world.boop This program is Hello World translated from Brainfuck to

Federico Damián Schonborn 4 Aug 12, 2022
Brainf - A brainfuck interpreter written in Rust 🦀

brainf A brainfuck interpreter written in Rust ?? . Do not I wrote this in my spare time... but still its good! Run Locally Clone the project git cl

Nav 3 Oct 8, 2022
A transpiler/compiler for CrabRave, a version of BrainFuck with sea-life emojis.

CrabRave Programming Language CrabRave is a fun and unique programming language based on Brainfuck, which utilizes crab and sea-life emojis as its syn

null 23 May 3, 2023
High-level PortMidi bindings and wrappers for Rust

High-level PortMidi bindings and wrappers for Rust

Philippe Delrieu 69 Dec 1, 2022
High-level, optionally asynchronous Rust bindings to llama.cpp

llama_cpp-rs Safe, high-level Rust bindings to the C++ project of the same name, meant to be as user-friendly as possible. Run GGUF-based large langua

Binedge.ai 4 Nov 21, 2023