brainfuck
Created by Urban Müller in 1993. The language is Turing-complete, but has an extremely minimal instruction set, no variables or functions, and extremely limited utility all around. Designed to have the smallest possible compiler.
Useful Links
- Manpage for beef, the interpreter we will be using.
- Wikipedia page
- Brainfuck page of Brian Raiter. Some useful information and links.
- 99 bottles of beer program.
Tools
The interpreter we'll use for Brainfuck is called Beef.
Everything you need is already installed on CS department lab machines
in the /courses/roche/413/bin
folder, which should be in your
PATH.
To install on your virtual machine, follow these steps:
-
Run
sudo apt install -y beef
How I will run your code
The programs you submit should be in a single file
called proj.bf
, for either part of the project.
I will test your code by running the following commands
using the software available in the lab environment or using the instructions
above:
beef proj.bf
Phase 1 Requirements
For this language, you need to implement modifications A and D. See the Phase 1 page for details on what this means.
Phase 2
See the Phase 2 Page for the list of suggested
problems. Of the ones listed, I recommend the following as being most
well-suited for Brainfuck:
- Compiler
- Matrix Calculator
- Rock, Paper, Scissors
- ??? (you choose!)