braincraft
braincraft is brainfuck but updates happen like minecraft.
updates
1.0 - barebones
the additions for 1.0 are:
+ increments the cell under pointer by 1 - decrements the cell under pointer by 1 x squares the cell under pointer [ jump to ] if the cell under pointer is 0 ] jump to [ if the cell under pointer is greater than 0 { jump to } if the cell under pointer is greater than 0 } jump to { if the cell under pointer is 0 < move the pointer backwards 1 cell > move the pointer forwards 1 cell c move the pointer to cell 0 i move the pointer to cell input . output the cell under pointer as ASCII , input ASCII to the cell under pointer & input numbers to the cell under pointer / output numbers to the cell under pointer ( add the cell to the left of the cell under pointer to the cell under pointer ) add the cell to the right of the cell under pointer to the cell under pointer SPECIAL RULES: cells wrap over 256->0
1.1 - string update
the additions for 1.1 are:
" string mode toggle ~ string mode print
in string mode, things are executed like this:
the first letter in string mode is put into the cell at pointer, then the cell at pointer is moved forwards 1 cell and the next letter is put, cycle repeats until end of string mode.
you can put ~ to print the string in its entirety and move the pointer to the start of when string mode was activated.
1.2 - wormhole update
the additions for 1.2 are:
← move the wormhole pointer backward 1 wormhole l move the wormhole pointer to wormhole 0 · jump into wormhole at pointer → move the wormhole pointer forward 1 wormhole ↄ move the wormhole pointer forward 1 wormhole if the cell at pointer is greater then 0 * exit if wormhole inside of is wormhole at wormhole pointer w move the wormhole pointer to wormhole with the value of the cell at pointer p move the wormhole pointer to wormhole with the value of the position of the pointer
all of these commands work while inside of a wormhole
1.3 - parallel dimensions update
2 enable two dimensionality | path } path split \ path end downwards/begin downwards / path end upwards/begin upwards z end a dimension y end a dimension if cell at pointer is 0
old / gets moved to = in two dimensionality mode
at the end of the program, "o" marks the correct path
for example:
+++2++\+++++[>++++++++++<-]>. } \++++++[>+++++++++<-]>.o
prints c, while
+++2++\+++++[>++++++++++<-]>.o } \++++++[>+++++++++<-]>.
prints d. if no "o" is there, the toppest path is automatically picked.
1.4 - time travel update
t mark point in time T travel to most recent marked point in time b delete most recent marked point in time F travel to most recent marked point in time if cell at pointer is greater than 0
1.5 - optimization update 1
' "~ n toggle number mode A adds 65 to cell under pointer a adds 97 to cell under pointer f t with F at end of program. really good for short programs
number mode puts the number into the cell at pointer
programs
note: some programs may not be displayed for earlier versions (i.e. 1.0-1.4)
cats
number
1.0-1.3
&[/&]
1.4
t&/F
1.5-currnet
f&/
ASCII
1.0-1.3
,[.,]
1.4
t,.F
1.5-current
f,.
hello world
1.0
+[-->-[>>+>-----<<]<--<---]>-.>>>+.>>..+++[.>]<<<<.+++.------.<<-.>>>>+.
1.1-1.4
"Hello, world!"~
1.5-current
"Hello, world'
kiwiscript
1.1-1.4
"kiwi"~
1.5-current
"kiwi'
truth machine
1.0-1.3
&/[/]
1.4
&t/F
1.5-current
&f/
ASCII loop
1.0-1.3
+[.+]
1.4
t+.F
1.5-current
f+.