iHeadAche
- Version : 1.1 (September 2007)
- Freeware for :
- Language :
- Screen :
- Downloadable File : iheadache.zip (91 Kb)
iHeadAche is just another one of my developer's game, the development of a BrainF*ck interpreter for Palm by using iziBasic.
What is iHeadAche?
iHeadAche is an interpreter for the BrainF*ck esoteric language.
iHeadAche can also convert a BrainF*ck source code to an iziBasic source code for being then compiled with iziBasic.
iHeadAche was itself written in iziBasic for Palm.
Its source code is to be found in the ZIP file you downloaded (please read the Installing iHeadAche paragraph).
BrainF*ckBrainF*ck was created by Urban Mueller for the Amiga OS 2.0, and he wrote an assembler compiler which was only 240 bytes long!
This tiny language has only 8 instructions (yes, only 8!) but it still is Turing complete, meaning that any computable calculation can be computed using it.
The BrainF*ck operators are:
|
decrements the pointer |
> |
increments the pointer |
+ |
increments the pointed byte |
- |
decrements the pointed byte |
. |
outputs the pointed byte |
, |
reads a byte from the input and stores it at pointed byte |
[ |
jumps to matching ] if the pointed byte is null |
] |
jumps to matching [ if the pointed byte is not null |
Note: bytes (8 bits integers) can be replaced by 16 bits integers as an option in iHeadAche
Knowing this, the BrainF*ck source code for the classical 'Hello World' sample program, which does nothing else but to display 'Hello World' on the screen, is:
++++++++[>+++++++++.++++++-.+++++++..+++.>++++>.------.++++++.+++.------.--------.>+. |
This seems quite weird... But, do not be afraid by this first feeling, please read below!
Plenty of resources and web sites made by people who like BrainF*ck a lot (yes, this is possible!) are easily found on the internet. Just type in "brainfuck" (Drat it! I wrote it replacing the * character by the u letter!) in the search field of any search engine and you will be amazed by the number of returned links...
Here below are just a few recommended links:
Link #1: http://home.planet.nl/~faase009/Ha_BF.html
Nieko Maatjes wrote back in 2002 what I believe to be the best tutorial for the BrainF*ck language, a must read.
Link #2: http://www.hevanet.com/cristofd/brainfuck/
Daniel Cristofani has a great collection of sample source codes, including a BrainF*ck interpreter written in BrainF*ck... amazing!), and plenty of other useful resources & links.
And, if you do not like my iHeadAche implementation, you will find not less than 2 other implementations of BrainF*ck running on the Palm devices (BrainF*ck is a so called esoteric development language but, as you can see, it is well widespread):
IDE Palm #1: http://arainyday.se/projects/palm/BFEdit/
IDE Palm #2: http://www.chocopoolp.com/go_freeware.php (this one by a good French friend of mine)
Updates Description1.1 (09/17/07)- recompiled this program with the latest iziBasic version 6.1 to avoid device freezes or soft resets on some devices
- changed the applications's name from iBrainF*ck to iHeadAche to bypass some American referencing site's prudish censorship!
1.0 (05/24/06)- initial release