RedefineFuck
Jump to navigation
Jump to search
RedefineFuck is brainfuck but you need to redefine symbols to run loops, if statements, etc.
Instructions
There are 5 instructions and 6 symbols. whitespaces are ignored, cAsE SeNsItIvE.
Initial instructions
| instruction | meaning | brainf**k rough equalivant |
|---|---|---|
| @ | increase 1 | + |
| [ | data pointer goes right | > |
| &x&...* | (re)define x to be ... then ptr left | None |
| ] | if x==0 skip else x-=1 | [->->++<]>>[-<<+>>]<<[[-]>-x<][-<+>]< |
| $ | input if x==0 else output x-1 | >[-]<[>+<-.[-]]>[<,>-]< |
Instruction name can NOT contain any of the initial instructions. Brackets should match, or a @ have a 1% chance to fail.
Computational level
| BF | RF | Notes |
|---|---|---|
| + | @ | |
| - | &-&*[]- | |
| > | [ | |
| < | &!&* | |
| [...] | &_&*[&a&@...]a_*]a_ | 'a' is a placeholder, each symbol should be different |
| , | &_&*[&a&@&-&*[]-]a_*]a_$ | |
| . | @$&-&*[]- |
Example(s)
Hello, World! (using wraps on 256)
@&_&*[&a&@&-&*[]-&-&*[]-[&-&*[]-&_&*[&a&@[[@[&-&*[]-&-&*[]-&-&*[]-&-&*[]-&- &*[]-&!&*&!&*]a_*]a_&!&*&-&*[]-&-&*[]-&!&*&-&*[]-&-&*[]-&-&*[]-]a_*]a_[&-&* []-@$&-&*[]-[[[@@$&-&*[]-[[@$&-&*[]-@$&-&*[]-@@@&_&*[&a&@@$&-&*[]-[]a_*]a_& !&*&!&*&!&*&!&*@$&-&*[]-@@@@$&-&*[]-&-&*[]-&-&*[]-&-&*[]-&-&*[]-&-&*[]-&-&* []-@$&-&*[]-&!&*&!&*&-&*[]-@$&-&*[]-[[[[@@$&-&*[]-]-]-]-]-]-]-]-]-]-]-]-]--
Cat, eof returns 0
[[[[@&_&*>&a&@&_&*>&b&@&-&*[]-]b_*]b-$@$&-&*[]-]a_*]a_
Looping counter
@&_&*[&a&@[[&_&*[&r&@[]r_*]r_@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&_&* [&r&@&!&*]r_*]r_[&_&*[&r&@@$&-&*[]-[]r_*]r_@@@@@@@@@@@$&-&*[]-&-&*[]-&-&*[] -&-&*[]-&-&*[]-&-&*[]-&-&*[]-&-&*[]-&-&*[]-&-&*[]-&-&*[]-&!&*&_&*[&r&@&!&*] r_*]r_&!&*]a_*]a_