- @kokoye2007 I'm not completely sure, but it looks pretty nice! ^^ 21 hours ago
- @soniczest Thank you, I will definitely consider this! ^^ 1 day ago
- @soniczest Thank you!! I checked out some of your sample libraries ... some of them sound absolutely fantastic, great job! ^^ 1 day ago
- @Peanut_nam Okay, first, try using relinux 0.3a3 and see if that works (there is a story of why 0.4a1 never really worked :P) 1 week ago
- @SteveStreza Nah, WINE is the best XD 1 week ago
A listing of random software, tips, tweaks, hacks, and tutorials I made for Ubuntu
bfdk – A brainf*** development kit
January 10, 2013Posted by on
Yes, I know, yet another compiler/interpreter for brainf***… we all know how many there are, we all know how easy it is to write, etc… First, you have to know, that was my 3rd application written in C, and I needed an exercise in C (compilers, interpreters, plugin systems, API design, etc…), so I decided to write this. So for the features:
- Compiler (compiles to C, then runs GCC) and interpreter
- Supports multiple dialects (pbrain, brainlove, ook!, and blub)
- Source slimming (strips all comments)
I know, not very exciting. You’re probably wondering where “development kit” comes in. That’s for later, as I planned to write some sort of shell for it, which would complete it. For now, I think it’s stable enough for general usage.
The source is available here: https://github.com/MiJyn/bfdk. Since this written was before I switched to vim, it uses eclipse makefiles, so it would be simplest for you to compile using eclipse. If you can’t, you can always use
make -f Debug/makefile.
Here are some examples of usage:
bfdk -f hello.bf — Will run hello.bf
bfdk -c -f hello.bf -o hello — Will compile hello.bf to hello
bfdk -s -f hello.bf — Will output a slimmed version of hello.bf (you can also specify an output file using -o)
bfdk -d brainlove -f test.bl — Will run test.bl using the brainlove dialect
bfdk — Will run a shell (currently just a simple EOF thingy)
As I said in the beginning, this is not a serious product, this was just an exercise for fun. If you can find it useful, awesome, if not, don’t blame me for writing a useless product.