brainfuck

This is the archived website of SI 413 from the Fall 2012 semester. Feel free to browse around; you may also find more recent offerings at my teaching page.

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

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 in the same environment as the lab machines in MI 302, using the command

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:

  1. Compiler (compile to brainfuck from some very simple language - see me)
  2. Make
  3. Matrix Calculator
  4. Image Creator
  5. Game Scheduler
  6. Hangman
  7. TODO list
  8. Vending Machine
  9. Game with hidden agenda
  10. Frequency count (count how many times each letter occurs, maybe)
  11. Guess the language
  12. Find the missing digits
  13. ??? (you choose!)