# vim: ts=2 sw=2 et ft=ruby
# Call with a binary number on the tape:
# $ turing.rb prefix-equals-suffix-reversed-with-infix.stm 100101001

 0. right goto: 1
 1. cond  if: '0', then: 2, else: 13
 2. write symbol: 'O', goto: 3
 3. right goto: 4
 4. cond  if: 'B', then: 21, else: 5
 5. right goto: 6
 6. cond  if: 'B', then: 7, else: 5
 7. left  goto: 8
 8. cond  if: '0', then: 9, else: 21
 9. write symbol: 'B', goto: 10
10. left  goto: 11
11. cond  if: '0', then: 10, else: 12
12. cond  if: '1', then: 10, else: 0
13. cond  if: '1', then: 14, else: 31
14. write symbol: 'I', goto: 15
15. right goto: 16
16. cond  if: 'B', then: 21, else: 17
17. right goto: 18
18. cond  if: 'B', then: 19, else: 17
19. left  goto: 20
20. cond  if: '1', then: 9, else: 21
21. write symbol: 'B', goto: 22
22. left  goto: 23
23. cond  if: '0', then: 21, else: 24
24. cond  if: '1', then: 21, else: 25
25. write symbol: 'B', goto: 26
26. left  goto: 27
27. cond  if: 'O', then: 29, else: 28
28. cond  if: 'I', then: 30, else: 32
29. write symbol: '0', goto: 26
30. write symbol: '1', goto: 26
31. halt
32. right goto: 33
33. cond  if: 'B', then: 31, else: 32
