|
News
In the wake of Python, new languages have been added in varying stages of completeness.
I'm actually posting this now because of C++, which has been added, and now completely works. The C++ translation supports all the same things the C/Perl/Python translations do.
Lisp is coming along well. I'm not sure what's broken, but it won't be long.
I also added Java. (Boo! Hiss!) Actually I just shamelessly stole it from another C program I found laying around that translated brainfuck to Java. The input is broken, and it uses a finite list, but it does (mostly) work.
So that's it. I hope those of you who use C++ understand the C++ translation. It's largely adapted from the C translation, with a few changes made because C++ just likes to do things differently. Enjoy!
Top
I'm impressed to say that a Python translation has now been added.
This is an impressive achievement for me. I grew up a Perl man, and all I know about Python is that it's the devil. I've been waiting around on people I know who've been saying "I'm learning Python" for months, and I finally got sick and did a Google search and found a brainfuck interpreter written in Python where I could tell what the equivalent Python code was for each brainfuck command. I then delved deep enough into Python to figure out .append and .insert , so I could make an infinite list, and modified it a little to support different EOF behaviors.
All in all, I basically bullshitted a brainfuck-to-Python translation. I need to hurry up and put a release up here.
Top
sbf stands for Sbf BrainFuck. It is a brainfuck interpreter, compiler, and translator.
What is brainfuck? http://en.wikipedia.org/wiki/brainfuck
brainfuck is an esoteric programming language. It is one of the smallest Turing-complete programming languages, with only 8 commands.
brainfuck was originally created by Urban Müller as a language with a compiler of less than 200 bytes (the compiler was written in Amiga assembly). Since then, many compilers and interpreters have been written for brainfuck in many languages and for many platforms. Often times, when they need to resolve a critical issue (what to do if someone reads a character after EOF), they resolve it in whatever way is the default, which lead to a proliferation of different ideas on how exactly brainfuck should be implemented. Also, because brainfuck is so easy to implement, many people would write a program, put it on the internet, and never touch it again. I've downloaded countless programs that probably have simple to fix errors, but I'm too lazy to struggle through their source code and figure it out, I can't contact the creator, and they left no documentation about how it works or how to fix it.
sbf seeks to solve that. It has an interpreter, compiler, and translator to a variety of languages (assembly, C, Lisp, Perl) all rolled into one. Sure, it's not less than 200 bytes, but it's portable, it has all brainfuck utilities you'll ever need (it can even count how many of each brainfuck command you use), and it has documentation. Plus, it doesn't gloss over issues like EOF or EOL - it explicitly converts between ASCII 10 and \n on platforms like Windows that have more complicated line endings, and it allows users to select different EOF behaviors depending on their program, so a program that works with no change on EOF can be used with sbf just as easily as one that requires returing 0 on EOF or returing -1 on EOF.
Top
Newer | No older entries
|
|