Of0ck the language
Here's a quick twist on the classic esoteric programming language Brainf*ck.
Of0ck uses modified input symbols:
oO == > Increment the pointer.
oo == < Decrement the pointer.
0O == + Increment the byte at the pointer.
0o == - Decrement the byte at the pointer.
Oo == . Output the byte at the pointer.
OO == , Input a byte and store it in the byte at the pointer.
O0 == [ Jump forward past the matching ] if the byte at the pointer is zero.
o0 == ] Jump backward to the matching [ unless the byte at the pointer is zero.
Any lines beginning with * are treated as comments and all whitespace is insignificant.
As an example, a program that reads its input, reverses it and prints to the
output looks like: OOO0oOOOo0ooO0Ooooo0
nice, eh? :)
Program:
Input:
Output:
Got a BF program, but want to execute it using Of0ck? No problem: paste the BF into the field below, hit translate and equivalent Of0ck will appear!
Translate BF to Of0ck:
I've uploaded the code to GitHub, here.