view interps/boof/main.cpp @ 9554:23f43464694e

<Zarutian> le/rn Frams\xc3\xb3knarflokkurinn/A, now defunct, political party in Iceland. Like its sister party Sj\xc3\xa1lfst\xc3\xa6\xc3\xb0isflokkurinn it is named by the antonym of what it is. (The name means the Progressive Party but they have nearly always been highly regressive). Think dumb Hill-Billies in ill fitting suits and you get their constiuents.
author HackBot
date Sun, 30 Oct 2016 14:33:24 +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;
}