aboutsummaryrefslogtreecommitdiffstats
path: root/src/d-turing.gmo
blob: b1125ea397ea52710a6a11af22e9aa412db69987 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# d-turing

bailando los inicios, una máquina de turing

parte de las {compudanzas}

# componentes

## participantes

la siguiente descripción depende de tres personas / roles:

* cabeza en cinta
* semáforo de estado
* instructora

la dinámica podría adaptarse fácilmente para dos o una persona(s), pero es más divertido bailarla en grupo.

## materiales

como materiales tangibles se requiere lo siguiente:

* un conjunto de objetos flexibles para crear una fila con ellos: por ejemplo cordones, calcetines, bloques de madera...
* una tabla de reglas en papel o arcilla; al menos en lo que se memoriza

## elementos

una máquina en específico consiste de los siguientes elementos:

* un conjunto finito de símbolos posibles a colocar en la cinta, con un conjunto de movimientos que correspondan uno-a-uno.
* una cinta con dichos símbolos, acomodados en una configuración inicial según sea el caso.
* un conjunto finito de estados posibles, cada uno con un movimiento correspondiente.
* un estado inicial.
* un par de movimientos que indiquen dirección en un eje; por ejemplo izquierda y derecha.
* una tabla de reglas, que responde lo siguiente: dado un símbolo encontrado en la cinta, y un estado actual: ¿por cuál símbolo hay que reemplazarlo, a qué dirección hay que mover la cabeza, y cuál ha de ser el nuevo estado?

# guía

## preparación

es necesario que la cabeza en cinta conozca los símbolos posibles en la cinta, y sus movimientos correspondientes. además, ha de conocer los movimientos de dirección.

el semáforo ha de conocer los estados posibles y sus movimientos correspondientes.

la instructora tiene que conocer todos los movimientos nombrados arriba.

## inicialización

hay que acomodar la cinta de símbolos en una configuración inicial adecuada.

la cabeza en cinta se coloca al lado del primer símbolo. 

el semáforo empieza a moverse con el estado inicial.

la instructora se prepara.

## el ciclo

la cabeza en cinta se empieza a mover transmitiendo en qué símbolo se encuentra.

la instructora observa el movimiento del semáforo y el movimiento de la cabeza en cinta, y busca en su tabla de reglas la entrada correspondiente:

¿qué acciones hay que tomar a partir del estado actual y del símbolo leído por la cabeza en cinta?

### con respuesta

si la tabla tiene una respuesta, la instructora empieza a moverse para transmitir las acciones a tomar:

* primero realiza un movimiento de símbolo: la cabeza en cinta lo recibe y lo usa para reemplazar al símbolo en el que se encuentra actualmente.
* cuando concluye la transformación, la instructora realiza un movimiento de dirección: la cabeza en cinta lo recibe y lo sigue para dirigirse al siguiente símbolo que se encuentra en esa dirección.
* finalmente, la instructora realiza un movimiento de estado: el semáforo lo recibe, y lo ha de empezar a realizar como indicación del estado actual.

terminando esas acciones, el ciclo vuelve a comenzar.

### sin respuesta

si la tabla no tiene una respuesta, entonces la máquina se detiene. el cómputo ha terminado.

# algunas máquinas

próximamente


## llega(n) aquí
=> ./compudanzas.gmi {compudanzas}
Un proyecto texto-plano.xyz