summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorjakob <jakob@memeware.net>2017-03-18 18:07:39 -0400
committerjakob <jakob@memeware.net>2017-03-18 18:07:39 -0400
commitd45dbeb48a9da2ccfc1dd3fc0f3baea4c365e086 (patch)
treed1107185a1b722ee65b2c8f9b5f70376dd39057a /examples
parent9b5abf3e3859e54d4bc48db0792b2686eb7bd16a (diff)
The compilation process now includes *very* minimal code optimization.
Diffstat (limited to 'examples')
-rw-r--r--examples/hello_world.bf1
-rw-r--r--examples/hello_world_commented.bf33
-rw-r--r--examples/rot13.bf1
-rw-r--r--examples/rot13_commented.bf28
4 files changed, 0 insertions, 63 deletions
diff --git a/examples/hello_world.bf b/examples/hello_world.bf
deleted file mode 100644
index ea2b641..0000000
--- a/examples/hello_world.bf
+++ /dev/null
@@ -1 +0,0 @@
-++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++. \ No newline at end of file
diff --git a/examples/hello_world_commented.bf b/examples/hello_world_commented.bf
deleted file mode 100644
index fff532c..0000000
--- a/examples/hello_world_commented.bf
+++ /dev/null
@@ -1,33 +0,0 @@
-++++++++ Set Cell #0 to 8
-[
- >++++ Add 4 to Cell #1; this will always set Cell #1 to 4
- [ as the cell will be cleared by the loop
- >++ Add 2 to Cell #2
- >+++ Add 3 to Cell #3
- >+++ Add 3 to Cell #4
- >+ Add 1 to Cell #5
- <<<<- Decrement the loop counter in Cell #1
- ] Loop till Cell #1 is zero; number of iterations is 4
- >+ Add 1 to Cell #2
- >+ Add 1 to Cell #3
- >- Subtract 1 from Cell #4
- >>+ Add 1 to Cell #6
- [<] Move back to the first zero cell you find; this will
- be Cell #1 which was cleared by the previous loop
- <- Decrement the loop Counter in Cell #0
-] Loop till Cell #0 is zero; number of iterations is 8
-
-The result of this is:
-Cell No : 0 1 2 3 4 5 6
-Contents: 0 0 72 104 88 32 8
-Pointer : ^
-
->>. Cell #2 has value 72 which is 'H'
->---. Subtract 3 from Cell #3 to get 101 which is 'e'
-+++++++..+++. Likewise for 'llo' from Cell #3
->>. Cell #5 is 32 for the space
-<-. Subtract 1 from Cell #4 for 87 to give a 'W'
-<. Cell #3 was set to 'o' from the end of 'Hello'
-+++.------.--------. Cell #3 for 'rl' and 'd'
->>+. Add 1 to Cell #5 gives us an exclamation point
->++. And finally a newline from Cell #6
diff --git a/examples/rot13.bf b/examples/rot13.bf
deleted file mode 100644
index e9e82be..0000000
--- a/examples/rot13.bf
+++ /dev/null
@@ -1 +0,0 @@
--,+[-[>>++++[>++++++++<-]<+<-[>+>+>-[>>>]<[[>+<-]>>+>]<<<<<-]]>>>[-]+>--[-[<->+++[-]]]<[++++++++++++<[>-[>+>>]>[+[<+>-]>+>>]<<<<<-]>>[<+>-]>[-[-<<[-]>>]<<[<<->>-]>>]<<[<<+>>-]]<[-]<.[-]<-,+] \ No newline at end of file
diff --git a/examples/rot13_commented.bf b/examples/rot13_commented.bf
deleted file mode 100644
index 85a97fa..0000000
--- a/examples/rot13_commented.bf
+++ /dev/null
@@ -1,28 +0,0 @@
--,+[ Read first character and start outer character reading loop
- -[ Skip forward if character is 0
- >>++++[>++++++++<-] Set up divisor (32) for division loop
- (MEMORY LAYOUT: dividend copy remainder divisor quotient zero zero)
- <+<-[ Set up dividend (x minus 1) and enter division loop
- >+>+>-[>>>] Increase copy and remainder / reduce divisor / Normal case: skip forward
- <[[>+<-]>>+>] Special case: move remainder back to divisor and increase quotient
- <<<<<- Decrement dividend
- ] End division loop
- ]>>>[-]+ End skip loop; zero former divisor and reuse space for a flag
- >--[-[<->+++[-]]]<[ Zero that flag unless quotient was 2 or 3; zero quotient; check flag
- ++++++++++++<[ If flag then set up divisor (13) for second division loop
- (MEMORY LAYOUT: zero copy dividend divisor remainder quotient zero zero)
- >-[>+>>] Reduce divisor; Normal case: increase remainder
- >[+[<+>-]>+>>] Special case: increase remainder / move it back to divisor / increase quotient
- <<<<<- Decrease dividend
- ] End division loop
- >>[<+>-] Add remainder back to divisor to get a useful 13
- >[ Skip forward if quotient was 0
- -[ Decrement quotient and skip forward if quotient was 1
- -<<[-]>> Zero quotient and divisor if quotient was 2
- ]<<[<<->>-]>> Zero divisor and subtract 13 from copy if quotient was 1
- ]<<[<<+>>-] Zero divisor and add 13 to copy if quotient was 0
- ] End outer skip loop (jump to here if ((character minus 1)/32) was not 2 or 3)
- <[-] Clear remainder from first division if second division was skipped
- <.[-] Output ROT13ed character from copy and clear it
- <-,+ Read next character
-] End character reading loop