Brainfuccuccino is a Java scripting engine which allows brainfuck programs to be embedded and run in Java applications. It conforms to the Java Scripting API (JSR 223).
One key feature of Brainfuccuccino is that it conforms to the Java Scripting API (JSR 223).
This allows using the ScriptEngine
interface to execute brainfuck programs:
ScriptEngine bfScriptEngine = new ScriptEngineManager().getEngineByName("brainfuccucino");
ScriptContext context = bfScriptEngine.getContext();
// Set up a writer for the brainfuck program to output to.
Writer writer = new StringWriter();
context.setWriter(writer);
// Hello World program from https://esolangs.org/wiki/Brainfuck (CC0 public domain)
bfScriptEngine.eval(
"++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>" +
"---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.",
context
);
// Prints "Hello World!"
System.out.println(writer.toString());
Another straightforward option to run brainfuck programs is to call Brainfuccuccino directly.
The following is a cat
or a program that echoes back standard input to standard output.
Brainfuccuccino.brew(",[.,]");
Brainfuccuccino.brew
attaches System.in
and System.out
to the input and output (respectively) of the brainfuck program automatically.
This allows quick experimentation with brainfuck programs that involve I/O.