Turing Trains

 

computational train track layouts

menu

Switching Yard

This layout shows a possible design for a switching yard. This is an array of points which allows any input line to be connected to any output line. Setting points directs the train to follow a series of program steps. Set points have a blue border.

The train starts at the station platform and is directed to the first function. If no first function is selected, the train passes a loop and is returned as a (program) error. The output lines on the right are connected to the function libray stack.

Trains return from each function to the input lines at the top of the array. They are connected to the next function by setting the required point as determined by the program. Any function can also return the train as an error.

No train can be connected to the same function it has just returned from, as this creates an immeadite infinite loop. So a diagonal row of switches is 'missing' from the array. Each input line can also be connected to the 'halt' line to terminate the program.

Switching Yard
triangular number series calculator
Click grass to pause/run train Click points to switch 0/1 Click start to reset train/points
lazy point Lazy points switch between upper 0 or lower 1 branch lines.
Trains arriving on a branch line switch the point to that line.
sprung point Sprung points allow branch line trains to join the main line.
All main line trains go straight ahead and never 'branch off'.

By using a switching yard the train track computer can be programmed with any program by simply setting the required switches in the array. Eventually, these settings might be able to be read from memory. If the computer writes to the same memory locations, then it could modify its own program.

Turing Trains | cr31.co.uk | 2017

 

use your browsers 'zoom' option to enlarge layouts