view interps/boof/main.cpp @ 7477:98fd473cd50e

<b_jonas> slashlearn font/#esoteric bitmap fonts include: \\oren\\\'s font http://www.orenwatson.be/fontdemo.htm , lifthrasiir\'s font https://github.com/lifthrasiir/unison/ https://lifthrasiir.github.io/unison/sample.png , b_jonas\'s font http://www.math.bme.hu/~ambrus/pu/fecupboard20-c.pcf.gz
author HackBot
date Mon, 18 Apr 2016 21:01:34 +0000
parents 859f9b4339e6
children
line wrap: on
line source

/* boolfuck.cpp -- an implementation of the Boolfuck programming
 * language, invented by Sam Hughes (not that I'm the first).  This
 * implementation is by Sam Hughes.  Not designed for hyperefficiency
 * or anything :) -- boof@samuelhughes.com */
 
/* For the rest of this document, I recommend considering the word "fuck" to be
 * non-profane. */

/* See also "smallfuck", which was apparently devised around 2002, and
 * of course, "brainfuck", which has been around for a while. */

#include "boof.h"

#include <iostream>

#include <string>
using std::string;

#include <fstream>


int main(int argc, char ** argv)
{
    if (argc != 2) {
	std::cerr << "Use one argument.  Not wimping out, are you?\n";
	return 1;
    }

    std::ifstream fin(argv[1]);

    if (! fin) {
	std::cerr << "Error opening file.  Did you even make a file?\n";
	return 1;
    }

    boofer runner(fin);
    runner.execute(std::cin, std::cout);

    /* These variable names are actually as descriptive as possible. */

    return 0;
}