aboutsummaryrefslogtreecommitdiff
path: root/bfturing.bf
diff options
context:
space:
mode:
Diffstat (limited to 'bfturing.bf')
-rw-r--r--bfturing.bf180
1 files changed, 180 insertions, 0 deletions
diff --git a/bfturing.bf b/bfturing.bf
new file mode 100644
index 0000000..536dd51
--- /dev/null
+++ b/bfturing.bf
@@ -0,0 +1,180 @@
+READ INPUT
+
++ >>>>>>>>>>
+> +
+[
+ -
+ >>>> ,
+ [-<+<+>>]<<[->>+<<]
+ +
+ > +
+ [
+ [-]
+ < -
+ >>>>>>>> +
+
+ <<<<< ,
+ [->+>+<<]>>[-<<+>>]
+ +
+ < --------------------------------
+ [>-<[-]]
+ > [<<[-]>>[-]]
+ < ,
+ > ,
+ [->+>+<<]>>[-<<+>>]
+ +
+ < --------------------------------
+ [>-<[-]]
+ > [<<[-]>>[-]]
+
+ < ,
+ >++++++[-<---------->]<-
+
+ <<<<<
+ ]
+
+ <
+ [ >> [-] << [-] ]
+
+ >>>>>>>>
+]
+
+<<<<<<<<<<
+
+>+++++++[-<++++++++++++>]<- <
++
+>>>>>> + <<<<<<
+
+
+MAIN LOOP
+
+>>++++++++[-<--------->]<
+[
+ >++++++++[-<+++++++++>]<<
+
+ EXECUTION STEP
+
+ >> +
+ [
+ - >>>>> +
+ <[->->+<<]>>[-<<+>>]<
+ ]
+ <<
+
+ >>>> [-<+<+>>]<[->+<]
+ +
+ [
+ -
+ <<<<< +
+ <<< [->>+>-<<<] >> [-<<+>>]
+ >>>>> [-<<<<<+>>>>>] <<<<
+ ]
+
+ << [-<<<<<<<<<<+>>>>>>>>>> >>+<<] >>[-<<+>>]
+ < [-<<<<<<<<<<+>>>>>>>>>>]
+ > +
+ [
+ [-] <<<<<<<<<< [-]
+ >> [-<+<+>>]<<[->>+<<]
+ << [-<+>>>+<<]<[->+<]
+ >>> [->-<]>[<+>[-]]
+ < [-<<<<<<<<<<+>>>>>>>>>>]
+
+ >>> [-<<+<+>>>]<<<[->>>+<<<]
+ < [-<<+>>>+<]<<[->>+<<]
+ >>> [->-<]>[<+>[-]]
+ < [-<<<<<<<<<+>>>>>>>>>]
+
+ <<<<<<<<<< [->>>>>>>>>>>+<<<<<<<<<<<]
+ > [->>>>>>>>>>+<<<<<<<<<<] >>>>>>>>>>
+ [[-]<+>]
+
+ < [-<<<+<<<<<<<+>>>>>>>>>>]<<<[->>>+<<<]
+
+ <<<<<<<<<< [>>>>>>>>>> >>>[-]>+<<<< <<<<<<<<<<-]
+ >>>>>>>>>> >>>> [-<<<< <<<<<<<<<<+>>>>>>>>>> >>>>]
+
+ <<< [-<<<<<<<<<<+>>>>>>>>>>]
+ > [-<<<<<<<<<<+>>>>>>>>>>]
+ >
+ ]
+
+ <<<<<<<<<<
+ [$] CRASH
+
+ << [-] > [-]
+ >>>>>>>>>> >>>>> [-<<<<<+<+>>>>>>]<<<<<<[->>>>>>+<<<<<<]
+ >>>>>>> [-<<<<<+<<+>>>>>>>]<<<<<<<[->>>>>>>+<<<<<<<]
+ >>>>>>>> [-<<<<<+<<<+>>>>>>>>]<<<<<<<<[->>>>>>>>+<<<<<<<<]
+
+ >>>>>>>>>>> +
+ [
+ << [->>->+<<<] >>> [-<<<+>>>]
+ < [->>>>>>>>>>+<<<<<<<<<<]
+ <<<<<<<<<< [->>>>>>>>>>+<<<<<<<<<<]
+ > [->>>>>>>>>>+<<<<<<<<<<]
+ > [->>>>>>>>>>+<<<<<<<<<<]
+ >>>>>>>> >>>>>>>>>>
+ ]
+
+ <<<<<<<<<<
+
+ < [-]
+ > [-<+>]
+ > [-<+>] > [-<+>]
+
+ >>> +
+ [
+ < [->->+<<] >> [-<<+>>]
+ < [->>>>>+<<<<<]
+ <<<<< [->>>>>+<<<<<] > [->>>>>+<<<<<] >>>>
+ >>>>>
+ ]
+
+ <<<<<
+
+ >> [-]
+ << [->>+<<]
+
+ > [-<+<<+>>>] <<< [->>>+<<<]
+
+ >>
+ [
+ -
+ [<<+>>[-]]
+ ]
+
+ >
+ [
+ +
+ [<+>[-]]
+ ]
+
+ <<<
+ [
+ <<<<<
+ [$] CRASH
+ >>>>>> [-<<<<<+>>>>>]
+ < [-]
+ ]
+
+ >>
+ [
+ < [->>>>>+<<<<<]
+ > [-]
+ ]
+
+ +
+ [
+ -
+ <<<<< +
+ << [->>->+<<<] >>> [-<<<+>>>]
+ <
+ ]
+
+ <<
+
+
+ FINAL PART OF MAIN LOOP
+ >>++++++++[-<--------->]<
+]